teyvatdb 0.7.0 → 0.7.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. checksums.yaml +4 -4
  2. data/.octocov.yml +16 -0
  3. data/.rubocop.yml +6 -15
  4. data/.rubocop_todo.yml +1 -8
  5. data/CHANGELOG.md +9 -0
  6. data/Gemfile +10 -8
  7. data/Gemfile.lock +8 -133
  8. data/Rakefile +4 -4
  9. data/lib/genshin_data/artifact_sets/artifact_set_data.rb +295 -295
  10. data/lib/genshin_data/artifact_sets.rb +1 -1
  11. data/lib/genshin_data/characters/character_data.rb +587 -587
  12. data/lib/genshin_data/characters.rb +1 -1
  13. data/lib/genshin_data/materials/development/elite_monster_drops_data.rb +193 -193
  14. data/lib/genshin_data/materials/development/gems_data.rb +64 -64
  15. data/lib/genshin_data/materials/development/general_data.rb +22 -22
  16. data/lib/genshin_data/materials/development/local_specialty_data.rb +128 -128
  17. data/lib/genshin_data/materials/development/monster_loot_drops_data.rb +110 -110
  18. data/lib/genshin_data/materials/development/talent_books_data.rb +144 -144
  19. data/lib/genshin_data/materials/development/weapon_material_data.rb +163 -163
  20. data/lib/genshin_data/materials/development/weapon_refinement_material_data.rb +28 -28
  21. data/lib/genshin_data/materials/development/weekly_boss_drops_data.rb +78 -79
  22. data/lib/genshin_data/materials/development/world_boss_drops_data.rb +92 -92
  23. data/lib/genshin_data/materials/development.rb +10 -10
  24. data/lib/genshin_data/materials/standard/cooking_material_data.rb +188 -138
  25. data/lib/genshin_data/materials/standard/crafting_material_data.rb +36 -26
  26. data/lib/genshin_data/materials/standard/fishing_material_data.rb +88 -88
  27. data/lib/genshin_data/materials/standard/forging_material_data.rb +48 -48
  28. data/lib/genshin_data/materials/standard/furniture_material_data.rb +74 -64
  29. data/lib/genshin_data/materials/standard.rb +5 -5
  30. data/lib/genshin_data/materials.rb +2 -2
  31. data/lib/genshin_data/nations/nation_data.rb +18 -18
  32. data/lib/genshin_data/nations.rb +1 -1
  33. data/lib/genshin_data/talent_books/talent_book_data.rb +24 -24
  34. data/lib/genshin_data/talent_books.rb +1 -1
  35. data/lib/genshin_data/weapon_materials/weapon_material_data.rb +23 -23
  36. data/lib/genshin_data/weapon_materials.rb +1 -1
  37. data/lib/genshin_data/weapons/weapon_data/bows.rb +96 -86
  38. data/lib/genshin_data/weapons/weapon_data/catalysts.rb +100 -90
  39. data/lib/genshin_data/weapons/weapon_data/claymores.rb +95 -85
  40. data/lib/genshin_data/weapons/weapon_data/polearms.rb +84 -74
  41. data/lib/genshin_data/weapons/weapon_data/swords.rb +108 -98
  42. data/lib/genshin_data/weapons/weapon_data.rb +5 -5
  43. data/lib/genshin_data/weapons.rb +1 -1
  44. data/lib/genshin_data/weekly_bosses/weekly_boss_data.rb +27 -28
  45. data/lib/genshin_data/weekly_bosses.rb +1 -1
  46. data/lib/genshin_data/world_bosses/world_boss_data.rb +94 -94
  47. data/lib/genshin_data/world_bosses.rb +1 -1
  48. data/lib/genshin_data.rb +9 -9
  49. data/lib/genshin_object.rb +14 -14
  50. data/lib/teyvatdb/version.rb +1 -1
  51. data/lib/teyvatdb.rb +7 -7
  52. metadata +4 -6
@@ -11,16 +11,16 @@ module GenshinData
11
11
  end
12
12
 
13
13
  A_DAY_CARVED_FROM_RISING_WINDS = GenshinObject::ArtifactSet.new(
14
- kamera_key: "ADayCarvedFromRisingWinds",
15
- name: "A Day Carved From Rising Winds",
14
+ kamera_key: 'ADayCarvedFromRisingWinds',
15
+ name: 'A Day Carved From Rising Winds',
16
16
  bonuses: [
17
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["ATK +18%"]),
17
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['ATK +18%']),
18
18
  GenshinObject::ArtifactSetBonus.new(
19
19
  pieces_count: 4,
20
20
  bonus: [
21
- "After a Normal Attack, Charged Attack, Elemental Skill or Elemental Burst hits an opponent, gain the Blessing of Pastoral Winds effect for 6s: ATK is increased by 25%.",
21
+ 'After a Normal Attack, Charged Attack, Elemental Skill or Elemental Burst hits an opponent, gain the Blessing of Pastoral Winds effect for 6s: ATK is increased by 25%.',
22
22
  "If the equipping character has completed Witch's Homework, Blessing of Pastoral Winds will be upgraded to Resolve of Pastoral Winds, which also increases the CRIT Rate of the equipping character by an additional 20%.",
23
- "This effect can be triggered even when the character is off-field."
23
+ 'This effect can be triggered even when the character is off-field.'
24
24
  ]
25
25
  )
26
26
  ],
@@ -35,15 +35,15 @@ module GenshinData
35
35
  ).freeze
36
36
 
37
37
  ARCHAIC_PETRA = GenshinObject::ArtifactSet.new(
38
- kamera_key: "ArchaicPetra",
39
- name: "Archaic Petra",
38
+ kamera_key: 'ArchaicPetra',
39
+ name: 'Archaic Petra',
40
40
  bonuses: [
41
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Geo DMG Bonus +15%"]),
41
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Geo DMG Bonus +15%']),
42
42
  GenshinObject::ArtifactSetBonus.new(
43
43
  pieces_count: 4,
44
44
  bonus: [
45
- "Upon obtaining an Elemental Shard created through a Crystallize Reaction, all party members gain 35% DMG Bonus for that particular element for 10s.",
46
- "Only one form of Elemental DMG Bonus can be gained in this manner at any one time."
45
+ 'Upon obtaining an Elemental Shard created through a Crystallize Reaction, all party members gain 35% DMG Bonus for that particular element for 10s.',
46
+ 'Only one form of Elemental DMG Bonus can be gained in this manner at any one time.'
47
47
  ]
48
48
  )
49
49
  ],
@@ -58,16 +58,16 @@ module GenshinData
58
58
  ).freeze
59
59
 
60
60
  AUBADE_OF_MORNINGSTAR_AND_MOON = GenshinObject::ArtifactSet.new(
61
- kamera_key: "AubadeOfMorningstarAndMoon",
62
- name: "Aubade of Morningstar and Moon",
61
+ kamera_key: 'AubadeOfMorningstarAndMoon',
62
+ name: 'Aubade of Morningstar and Moon',
63
63
  bonuses: [
64
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Increases Elemental Mastery by 80"]),
64
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Increases Elemental Mastery by 80']),
65
65
  GenshinObject::ArtifactSetBonus.new(
66
66
  pieces_count: 4,
67
67
  bonus: [
68
- "When the equipping character is off-field, Lunar Reaction DMG is increased by 20%.",
68
+ 'When the equipping character is off-field, Lunar Reaction DMG is increased by 20%.',
69
69
  "When the party's Moonsign Level is at least Ascendant Gleam, Lunar Reaction DMG will be further increased by 40%.",
70
- "This effect will disappear after the equipping character is active for 3s."
70
+ 'This effect will disappear after the equipping character is active for 3s.'
71
71
  ]
72
72
  )
73
73
  ],
@@ -82,15 +82,15 @@ module GenshinData
82
82
  ).freeze
83
83
 
84
84
  BLIZZARD_STRAYER = GenshinObject::ArtifactSet.new(
85
- kamera_key: "BlizzardStrayer",
86
- name: "Blizzard Strayer",
85
+ kamera_key: 'BlizzardStrayer',
86
+ name: 'Blizzard Strayer',
87
87
  bonuses: [
88
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Cryo DMG Bonus +15%"]),
88
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Cryo DMG Bonus +15%']),
89
89
  GenshinObject::ArtifactSetBonus.new(
90
90
  pieces_count: 4,
91
91
  bonus: [
92
- "When a character attacks an opponent affected by Cryo, their CRIT Rate is increased by 20%.",
93
- "If the opponent is Frozen, CRIT Rate is increased by an additional 20%."
92
+ 'When a character attacks an opponent affected by Cryo, their CRIT Rate is increased by 20%.',
93
+ 'If the opponent is Frozen, CRIT Rate is increased by an additional 20%.'
94
94
  ]
95
95
  )
96
96
  ],
@@ -105,15 +105,15 @@ module GenshinData
105
105
  ).freeze
106
106
 
107
107
  BLOODSTAINED_CHIVALRY = GenshinObject::ArtifactSet.new(
108
- kamera_key: "BloodstainedChivalry",
109
- name: "Bloodstained Chivalry",
108
+ kamera_key: 'BloodstainedChivalry',
109
+ name: 'Bloodstained Chivalry',
110
110
  bonuses: [
111
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Physical DMG Bonus +25%"]),
111
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Physical DMG Bonus +25%']),
112
112
  GenshinObject::ArtifactSetBonus.new(
113
113
  pieces_count: 4,
114
114
  bonus: [
115
- "After defeating an opponent, increases Charged Attack DMG by 50%, and reduces its Stamina cost to 0 for 10s.",
116
- "Also triggers with wild animals such as boars, squirrels and frogs."
115
+ 'After defeating an opponent, increases Charged Attack DMG by 50%, and reduces its Stamina cost to 0 for 10s.',
116
+ 'Also triggers with wild animals such as boars, squirrels and frogs.'
117
117
  ]
118
118
  )
119
119
  ],
@@ -128,19 +128,19 @@ module GenshinData
128
128
  ).freeze
129
129
 
130
130
  CELESTIAL_GIFT = GenshinObject::ArtifactSet.new(
131
- kamera_key: "CelestialGift",
132
- name: "Celestial Gift",
131
+ kamera_key: 'CelestialGift',
132
+ name: 'Celestial Gift',
133
133
  bonuses: [
134
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Energy Recharge + 20%"]),
134
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Energy Recharge + 20%']),
135
135
  GenshinObject::ArtifactSetBonus.new(
136
136
  pieces_count: 4,
137
137
  bonus: [
138
138
  "If the equipping character has completed Witch's Homework, after they use an Elemental Skill, they also gain 'Light's Guidance' for 20s:",
139
139
  "All nearby party members gain a 20% Elemental DMG Bonus corresponding to the equipping character's Elemental Type.",
140
- "The equipping character can trigger this effect while off-field. DMG Bonuses provided by Artifact Sets with the same name do not stack.",
140
+ 'The equipping character can trigger this effect while off-field. DMG Bonuses provided by Artifact Sets with the same name do not stack.',
141
141
  "When your party has the Hexerei: Secret Rite effect, Light's Guidance is upgraded to 'Mortal Hymn':",
142
142
  "All nearby party members gain a 40% Elemental DMG Bonus corresponding to both the equipping character and the current active party member's Elemental Type instead.",
143
- "If both characters have the same Elemental Type, these bonuses will not stack."
143
+ 'If both characters have the same Elemental Type, these bonuses will not stack.'
144
144
  ]
145
145
  )
146
146
  ],
@@ -155,16 +155,16 @@ module GenshinData
155
155
  ).freeze
156
156
 
157
157
  CRIMSON_WITCH_OF_FLAMES = GenshinObject::ArtifactSet.new(
158
- kamera_key: "CrimsonWitchOfFlames",
159
- name: "Crimson Witch of Flames",
158
+ kamera_key: 'CrimsonWitchOfFlames',
159
+ name: 'Crimson Witch of Flames',
160
160
  bonuses: [
161
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Pyro DMG Bonus +15%"]),
161
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Pyro DMG Bonus +15%']),
162
162
  GenshinObject::ArtifactSetBonus.new(
163
163
  pieces_count: 4,
164
164
  bonus: [
165
- "Increases Overloaded and Burning, and Burgeon DMG by 40%.",
166
- "Increases Vaporize and Melt DMG by 15%.",
167
- "Using Elemental Skill increases the 2-Piece Set Bonus by 50% of its starting value for 10s. Max 3 stacks."
165
+ 'Increases Overloaded and Burning, and Burgeon DMG by 40%.',
166
+ 'Increases Vaporize and Melt DMG by 15%.',
167
+ 'Using Elemental Skill increases the 2-Piece Set Bonus by 50% of its starting value for 10s. Max 3 stacks.'
168
168
  ]
169
169
  )
170
170
  ],
@@ -179,15 +179,15 @@ module GenshinData
179
179
  ).freeze
180
180
 
181
181
  DEEPWOOD_MEMORIES = GenshinObject::ArtifactSet.new(
182
- kamera_key: "DeepwoodMemories",
183
- name: "Deepwood Memories",
182
+ kamera_key: 'DeepwoodMemories',
183
+ name: 'Deepwood Memories',
184
184
  bonuses: [
185
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Dendro DMG Bonus +15%"]),
185
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Dendro DMG Bonus +15%']),
186
186
  GenshinObject::ArtifactSetBonus.new(
187
187
  pieces_count: 4,
188
188
  bonus: [
189
189
  "After Elemental Skills or Bursts hit opponents, the targets' Dendro RES will be decreased by 30% for 8s.",
190
- "This effect can be triggered even if the equipping character is not on the field."
190
+ 'This effect can be triggered even if the equipping character is not on the field.'
191
191
  ]
192
192
  )
193
193
  ],
@@ -202,10 +202,10 @@ module GenshinData
202
202
  ).freeze
203
203
 
204
204
  DESERT_PAVILION_CHRONICLE = GenshinObject::ArtifactSet.new(
205
- kamera_key: "DesertPavilionChronicle",
206
- name: "Desert Pavilion Chronicle",
205
+ kamera_key: 'DesertPavilionChronicle',
206
+ name: 'Desert Pavilion Chronicle',
207
207
  bonuses: [
208
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Anemo DMG Bonus +15%."]),
208
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Anemo DMG Bonus +15%.']),
209
209
  GenshinObject::ArtifactSetBonus.new(
210
210
  pieces_count: 4,
211
211
  bonus: [
@@ -224,14 +224,14 @@ module GenshinData
224
224
  ).freeze
225
225
 
226
226
  DISENCHANTMENT_IN_DEEP_SHADOW = GenshinObject::ArtifactSet.new(
227
- kamera_key: "DisenchantmentInDeepShadow",
228
- name: "Disenchantment in Deep Shadow",
227
+ kamera_key: 'DisenchantmentInDeepShadow',
228
+ name: 'Disenchantment in Deep Shadow',
229
229
  bonuses: [
230
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["ATK +18%."]),
230
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['ATK +18%.']),
231
231
  GenshinObject::ArtifactSetBonus.new(
232
232
  pieces_count: 4,
233
233
  bonus: [
234
- "Increases Superconduct Reaction DMG by 80% and Stellar-Conduct Reaction DMG by 40%.",
234
+ 'Increases Superconduct Reaction DMG by 80% and Stellar-Conduct Reaction DMG by 40%.',
235
235
  "When the wielder attacks opponents affected by Superconduct or Stellar-Conduct, this attack's CRIT Rate is increased by 16%."
236
236
  ]
237
237
  )
@@ -247,16 +247,16 @@ module GenshinData
247
247
  ).freeze
248
248
 
249
249
  ECHOES_OF_AN_OFFERING = GenshinObject::ArtifactSet.new(
250
- kamera_key: "EchoesOfAnOffering",
251
- name: "Echoes of an Offering",
250
+ kamera_key: 'EchoesOfAnOffering',
251
+ name: 'Echoes of an Offering',
252
252
  bonuses: [
253
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["ATK +18%."]),
253
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['ATK +18%.']),
254
254
  GenshinObject::ArtifactSetBonus.new(
255
255
  pieces_count: 4,
256
256
  bonus: [
257
- "When Normal Attacks hit opponents, there is a 36% chance that it will trigger Valley Rite, which will increase Normal Attack DMG by 70% of ATK.",
258
- "This effect will be dispelled 0.05s after a Normal Attack deals DMG.",
259
- "If a Normal Attack fails to trigger Valley Rite, the odds of it triggering the next time will increase by 20%. This trigger can occur once every 0.2s."
257
+ 'When Normal Attacks hit opponents, there is a 36% chance that it will trigger Valley Rite, which will increase Normal Attack DMG by 70% of ATK.',
258
+ 'This effect will be dispelled 0.05s after a Normal Attack deals DMG.',
259
+ 'If a Normal Attack fails to trigger Valley Rite, the odds of it triggering the next time will increase by 20%. This trigger can occur once every 0.2s.'
260
260
  ]
261
261
  )
262
262
  ],
@@ -271,15 +271,15 @@ module GenshinData
271
271
  ).freeze
272
272
 
273
273
  EMBLEM_OF_SEVERED_FATE = GenshinObject::ArtifactSet.new(
274
- kamera_key: "EmblemOfSeveredFate",
275
- name: "Emblem of Severed Fate",
274
+ kamera_key: 'EmblemOfSeveredFate',
275
+ name: 'Emblem of Severed Fate',
276
276
  bonuses: [
277
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Energy Recharge +20%"]),
277
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Energy Recharge +20%']),
278
278
  GenshinObject::ArtifactSetBonus.new(
279
279
  pieces_count: 4,
280
280
  bonus: [
281
- "Increases Elemental Burst DMG by 25% of Energy Recharge.",
282
- "A maximum of 75% bonus DMG can be obtained in this way."
281
+ 'Increases Elemental Burst DMG by 25% of Energy Recharge.',
282
+ 'A maximum of 75% bonus DMG can be obtained in this way.'
283
283
  ]
284
284
  )
285
285
  ],
@@ -294,18 +294,18 @@ module GenshinData
294
294
  ).freeze
295
295
 
296
296
  FINALE_OF_THE_DEEP_GALLERIES = GenshinObject::ArtifactSet.new(
297
- kamera_key: "FinaleOfTheDeepGalleries",
298
- name: "Finale of the Deep Galleries",
297
+ kamera_key: 'FinaleOfTheDeepGalleries',
298
+ name: 'Finale of the Deep Galleries',
299
299
  bonuses: [
300
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Cryo DMG Bonus +15%"]),
300
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Cryo DMG Bonus +15%']),
301
301
  GenshinObject::ArtifactSetBonus.new(
302
302
  pieces_count: 4,
303
303
  bonus: [
304
- "When the equipping Character has 0 Elemental Energy, Normal Attack DMG is increased by 60% and Elemental Burst DMG is increased by 60%.",
305
- "After the equipping character deals Normal Attack DMG, the aforementioned Elemental Burst effect will stop applying for 6s.",
306
- "After the equipping character deals Elemental Burst DMG, the aforementioned Normal Attack effect will stop applying for 6s.",
307
- "This effect can trigger even if the equipping character is off the field.",
308
- "A maximum of 75% bonus DMG can be obtained in this way."
304
+ 'When the equipping Character has 0 Elemental Energy, Normal Attack DMG is increased by 60% and Elemental Burst DMG is increased by 60%.',
305
+ 'After the equipping character deals Normal Attack DMG, the aforementioned Elemental Burst effect will stop applying for 6s.',
306
+ 'After the equipping character deals Elemental Burst DMG, the aforementioned Normal Attack effect will stop applying for 6s.',
307
+ 'This effect can trigger even if the equipping character is off the field.',
308
+ 'A maximum of 75% bonus DMG can be obtained in this way.'
309
309
  ]
310
310
  )
311
311
  ],
@@ -320,18 +320,18 @@ module GenshinData
320
320
  ).freeze
321
321
 
322
322
  FLOWER_OF_PARADISE_LOST = GenshinObject::ArtifactSet.new(
323
- kamera_key: "FlowerOfParadiseLost",
324
- name: "Flower of Paradise Lost",
323
+ kamera_key: 'FlowerOfParadiseLost',
324
+ name: 'Flower of Paradise Lost',
325
325
  bonuses: [
326
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Increases Elemental Mastery by 80."]),
326
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Increases Elemental Mastery by 80.']),
327
327
  GenshinObject::ArtifactSetBonus.new(
328
328
  pieces_count: 4,
329
329
  bonus: [
330
330
  "The equipping character's Bloom, Hyperbloom, and Burgeon reaction DMG are increased by 40%.",
331
- "Additionally, after the equipping character triggers Bloom, Hyperbloom, or Burgeon, they will gain another 25% bonus to the effect mentioned prior.",
332
- "Each stack of this lasts 10s. Max 4 stacks simultaneously.",
333
- "This effect can only be triggered once per second.",
334
- "The character who equips this can still trigger its effects when not on the field."
331
+ 'Additionally, after the equipping character triggers Bloom, Hyperbloom, or Burgeon, they will gain another 25% bonus to the effect mentioned prior.',
332
+ 'Each stack of this lasts 10s. Max 4 stacks simultaneously.',
333
+ 'This effect can only be triggered once per second.',
334
+ 'The character who equips this can still trigger its effects when not on the field.'
335
335
  ]
336
336
  )
337
337
  ],
@@ -346,18 +346,18 @@ module GenshinData
346
346
  ).freeze
347
347
 
348
348
  FRAGMENT_OF_HARMONIC_WHIMSY = GenshinObject::ArtifactSet.new(
349
- kamera_key: "FragmentOfHarmonicWhimsy",
350
- name: "Fragment of Harmonic Whimsy",
349
+ kamera_key: 'FragmentOfHarmonicWhimsy',
350
+ name: 'Fragment of Harmonic Whimsy',
351
351
  bonuses: [
352
352
  GenshinObject::ArtifactSetBonus.new(
353
353
  pieces_count: 2,
354
- bonus: ["ATK +18%"]
354
+ bonus: ['ATK +18%']
355
355
  ),
356
356
  GenshinObject::ArtifactSetBonus.new(
357
357
  pieces_count: 4,
358
358
  bonus: [
359
- "When the value of a Bond of Life increases or decreases, this character deals 18% increased DMG for 6s.",
360
- "Max 3 stacks."
359
+ 'When the value of a Bond of Life increases or decreases, this character deals 18% increased DMG for 6s.',
360
+ 'Max 3 stacks.'
361
361
  ]
362
362
  )
363
363
  ],
@@ -372,18 +372,18 @@ module GenshinData
372
372
  ).freeze
373
373
 
374
374
  GILDED_DREAMS = GenshinObject::ArtifactSet.new(
375
- kamera_key: "GildedDreams",
376
- name: "Gilded Dreams",
375
+ kamera_key: 'GildedDreams',
376
+ name: 'Gilded Dreams',
377
377
  bonuses: [
378
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Increases Elemental Mastery by 80."]),
378
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Increases Elemental Mastery by 80.']),
379
379
  GenshinObject::ArtifactSetBonus.new(
380
380
  pieces_count: 4,
381
381
  bonus: [
382
- "Within 8s of triggering an Elemental Reaction, the character equipping this will obtain buffs based on the Elemental Type of the other party members.",
383
- "ATK is increased by 14% for each party member whose Elemental Type is the same as the equipping character, and Elemental Mastery is increased by 50 for every party member with a different Elemental Type.",
384
- "Each of the aforementioned buffs will count up to 3 characters.",
385
- "This effect can be triggered once every 8s.",
386
- "The character who equips this can still trigger its effects when not on the field."
382
+ 'Within 8s of triggering an Elemental Reaction, the character equipping this will obtain buffs based on the Elemental Type of the other party members.',
383
+ 'ATK is increased by 14% for each party member whose Elemental Type is the same as the equipping character, and Elemental Mastery is increased by 50 for every party member with a different Elemental Type.',
384
+ 'Each of the aforementioned buffs will count up to 3 characters.',
385
+ 'This effect can be triggered once every 8s.',
386
+ 'The character who equips this can still trigger its effects when not on the field.'
387
387
  ]
388
388
  )
389
389
  ],
@@ -398,14 +398,14 @@ module GenshinData
398
398
  ).freeze
399
399
 
400
400
  GLADIATORS_FINALE = GenshinObject::ArtifactSet.new(
401
- kamera_key: "GladiatorsFinale",
401
+ kamera_key: 'GladiatorsFinale',
402
402
  name: "Gladiator's Finale",
403
403
  bonuses: [
404
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["ATK +18%."]),
404
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['ATK +18%.']),
405
405
  GenshinObject::ArtifactSetBonus.new(
406
406
  pieces_count: 4,
407
407
  bonus: [
408
- "If the wielder of this artifact set uses a Sword, Claymore or Polearm, increases their Normal Attack DMG by 35%."
408
+ 'If the wielder of this artifact set uses a Sword, Claymore or Polearm, increases their Normal Attack DMG by 35%.'
409
409
  ]
410
410
  )
411
411
  ],
@@ -420,16 +420,16 @@ module GenshinData
420
420
  ).freeze
421
421
 
422
422
  GOLDEN_TROUPE = GenshinObject::ArtifactSet.new(
423
- kamera_key: "GoldenTroupe",
424
- name: "Golden Troupe",
423
+ kamera_key: 'GoldenTroupe',
424
+ name: 'Golden Troupe',
425
425
  bonuses: [
426
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Increases Elemental Skill DMG by 20%."]),
426
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Increases Elemental Skill DMG by 20%.']),
427
427
  GenshinObject::ArtifactSetBonus.new(
428
428
  pieces_count: 4,
429
429
  bonus: [
430
- "Increases Elemental Skill DMG by 25%.",
431
- "Additionally, when not on the field, Elemental Skill DMG will be further increased by 25%.",
432
- "This effect will be cleared 2s after taking the field."
430
+ 'Increases Elemental Skill DMG by 25%.',
431
+ 'Additionally, when not on the field, Elemental Skill DMG will be further increased by 25%.',
432
+ 'This effect will be cleared 2s after taking the field.'
433
433
  ]
434
434
  )
435
435
  ],
@@ -444,14 +444,14 @@ module GenshinData
444
444
  ).freeze
445
445
 
446
446
  HEART_OF_DEPTH = GenshinObject::ArtifactSet.new(
447
- kamera_key: "HeartOfDepth",
448
- name: "Heart of Depth",
447
+ kamera_key: 'HeartOfDepth',
448
+ name: 'Heart of Depth',
449
449
  bonuses: [
450
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Hydro DMG Bonus +15%"]),
450
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Hydro DMG Bonus +15%']),
451
451
  GenshinObject::ArtifactSetBonus.new(
452
452
  pieces_count: 4,
453
453
  bonus: [
454
- "After using an Elemental Skill, increases Normal Attack and Charged Attack DMG by 30% for 15s."
454
+ 'After using an Elemental Skill, increases Normal Attack and Charged Attack DMG by 30% for 15s.'
455
455
  ]
456
456
  )
457
457
  ],
@@ -466,18 +466,18 @@ module GenshinData
466
466
  ).freeze
467
467
 
468
468
  HUSK_OF_OPULENT_DREAMS = GenshinObject::ArtifactSet.new(
469
- kamera_key: "HuskOfOpulentDreams",
470
- name: "Husk of Opulent Dreams",
469
+ kamera_key: 'HuskOfOpulentDreams',
470
+ name: 'Husk of Opulent Dreams',
471
471
  bonuses: [
472
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["DEF +30%"]),
472
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['DEF +30%']),
473
473
  GenshinObject::ArtifactSetBonus.new(
474
474
  pieces_count: 4,
475
475
  bonus: [
476
- "A character equipped with this Artifact set will obtain the Curiosity effect in the following conditions:",
477
- "When on the field, the character gains 1 stack after hitting an opponent with a Geo attack, triggering a maximum of once every 0.3s.",
478
- "When off the field, the character gains 1 stack every 3s.",
479
- "Curiosity can stack up to 4 times, each providing 6% DEF and a 6% Geo DMG Bonus.",
480
- "When 6 seconds pass without gaining a Curiosity stack, 1 stack is lost."
476
+ 'A character equipped with this Artifact set will obtain the Curiosity effect in the following conditions:',
477
+ 'When on the field, the character gains 1 stack after hitting an opponent with a Geo attack, triggering a maximum of once every 0.3s.',
478
+ 'When off the field, the character gains 1 stack every 3s.',
479
+ 'Curiosity can stack up to 4 times, each providing 6% DEF and a 6% Geo DMG Bonus.',
480
+ 'When 6 seconds pass without gaining a Curiosity stack, 1 stack is lost.'
481
481
  ]
482
482
  )
483
483
  ],
@@ -492,11 +492,11 @@ module GenshinData
492
492
  ).freeze
493
493
 
494
494
  LAVAWALKER = GenshinObject::ArtifactSet.new(
495
- kamera_key: "Lavawalker",
496
- name: "Lavawalker",
495
+ kamera_key: 'Lavawalker',
496
+ name: 'Lavawalker',
497
497
  bonuses: [
498
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Pyro RES increased by 40%."]),
499
- GenshinObject::ArtifactSetBonus.new(pieces_count: 4, bonus: ["Increases DMG against opponents affected by Pyro by 35%."])
498
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Pyro RES increased by 40%.']),
499
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 4, bonus: ['Increases DMG against opponents affected by Pyro by 35%.'])
500
500
  ],
501
501
  max_rarity: 5,
502
502
  slots: {
@@ -509,19 +509,19 @@ module GenshinData
509
509
  ).freeze
510
510
 
511
511
  LONG_NIGHTS_OATH = GenshinObject::ArtifactSet.new(
512
- kamera_key: "LongNightsOath",
512
+ kamera_key: 'LongNightsOath',
513
513
  name: "Long Night's Oath",
514
514
  bonuses: [
515
515
  GenshinObject::ArtifactSetBonus.new(
516
516
  pieces_count: 2,
517
- bonus: ["Plunging Attack DMG increased by 25%."]
517
+ bonus: ['Plunging Attack DMG increased by 25%.']
518
518
  ),
519
519
  GenshinObject::ArtifactSetBonus.new(
520
520
  pieces_count: 4,
521
521
  bonus: [
522
522
  "After the equipping character's Plunging Attack/Charged Attack/Elemental Skill hits an opponent, they will gain 1/2/2 stack(s) of 'Radiance Everlasting.'",
523
- "Plunging Attacks, Charged Attacks or Elemental Skills can each trigger this effect once every 1s.",
524
- "Radiance Everlasting: Plunging Attacks deal 15%. increased DMG for 6s. Max 5 stacks.",
523
+ 'Plunging Attacks, Charged Attacks or Elemental Skills can each trigger this effect once every 1s.',
524
+ 'Radiance Everlasting: Plunging Attacks deal 15%. increased DMG for 6s. Max 5 stacks.',
525
525
  "Each stack's duration is counted independently."
526
526
  ]
527
527
  )
@@ -537,14 +537,14 @@ module GenshinData
537
537
  ).freeze
538
538
 
539
539
  MAIDEN_BELOVED = GenshinObject::ArtifactSet.new(
540
- kamera_key: "MaidenBeloved",
541
- name: "Maiden Beloved",
540
+ kamera_key: 'MaidenBeloved',
541
+ name: 'Maiden Beloved',
542
542
  bonuses: [
543
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Character Healing Effectiveness +15%"]),
543
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Character Healing Effectiveness +15%']),
544
544
  GenshinObject::ArtifactSetBonus.new(
545
545
  pieces_count: 4,
546
546
  bonus: [
547
- "Using an Elemental Skill or Burst increases healing received by all party members by 20% for 10s."
547
+ 'Using an Elemental Skill or Burst increases healing received by all party members by 20% for 10s.'
548
548
  ]
549
549
  )
550
550
  ],
@@ -559,13 +559,13 @@ module GenshinData
559
559
  ).freeze
560
560
 
561
561
  MARECHAUSSEE_HUNTER = GenshinObject::ArtifactSet.new(
562
- kamera_key: "MarechausseeHunter",
563
- name: "Marechaussee Hunter",
562
+ kamera_key: 'MarechausseeHunter',
563
+ name: 'Marechaussee Hunter',
564
564
  bonuses: [
565
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Normal and Charged Attack DMG +15%."]),
565
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Normal and Charged Attack DMG +15%.']),
566
566
  GenshinObject::ArtifactSetBonus.new(
567
567
  pieces_count: 4,
568
- bonus: ["When current HP increases or decreases, CRIT Rate will be increased by 12% for 5s. Max 3 stacks."]
568
+ bonus: ['When current HP increases or decreases, CRIT Rate will be increased by 12% for 5s. Max 3 stacks.']
569
569
  )
570
570
  ],
571
571
  max_rarity: 5,
@@ -579,17 +579,17 @@ module GenshinData
579
579
  ).freeze
580
580
 
581
581
  NIGHT_OF_THE_SKYS_UNVEILING = GenshinObject::ArtifactSet.new(
582
- kamera_key: "NightOfTheSkysUnveiling",
582
+ kamera_key: 'NightOfTheSkysUnveiling',
583
583
  name: "Night of the Sky's Unveiling",
584
584
  bonuses: [
585
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Increases Elemental Mastery by 80."]),
585
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Increases Elemental Mastery by 80.']),
586
586
  GenshinObject::ArtifactSetBonus.new(
587
587
  pieces_count: 4,
588
588
  bonus: [
589
- "When nearby party members trigger Lunar Reactions, if the equipping character is on the field, gain the Gleaming Moon: Intent effect for 4s.",
589
+ 'When nearby party members trigger Lunar Reactions, if the equipping character is on the field, gain the Gleaming Moon: Intent effect for 4s.',
590
590
  "Gleaming Moon: Intent: Increases CRIT Rate by 15%/30% when the party's Moonsign is Nascent Gleam/Ascendant Gleam.",
591
591
  "All party members' Lunar Reaction DMG is increased by 10% for each different Gleaming Moon effect that party members have.",
592
- "Effects from Gleaming Moon cannot stack."
592
+ 'Effects from Gleaming Moon cannot stack.'
593
593
  ]
594
594
  )
595
595
  ],
@@ -604,15 +604,15 @@ module GenshinData
604
604
  ).freeze
605
605
 
606
606
  NIGHTTIME_WHISPERS_IN_THE_ECHOING_WOODS = GenshinObject::ArtifactSet.new(
607
- kamera_key: "NighttimeWhispersInTheEchoingWoods",
608
- name: "Nighttime Whispers in the Echoing Woods",
607
+ kamera_key: 'NighttimeWhispersInTheEchoingWoods',
608
+ name: 'Nighttime Whispers in the Echoing Woods',
609
609
  bonuses: [
610
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["ATK +18%"]),
610
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['ATK +18%']),
611
611
  GenshinObject::ArtifactSetBonus.new(
612
612
  pieces_count: 4,
613
613
  bonus: [
614
- "After using an Elemental Skill, gain a 20% Geo DMG Bonus for 10s.",
615
- "While under a shield granted by the Crystallize reaction, the above effect will be increased by 150%, and this additional increase disappears 1s after that shield is lost."
614
+ 'After using an Elemental Skill, gain a 20% Geo DMG Bonus for 10s.',
615
+ 'While under a shield granted by the Crystallize reaction, the above effect will be increased by 150%, and this additional increase disappears 1s after that shield is lost.'
616
616
  ]
617
617
  )
618
618
  ],
@@ -627,13 +627,13 @@ module GenshinData
627
627
  ).freeze
628
628
 
629
629
  NOBLESSE_OBLIGE = GenshinObject::ArtifactSet.new(
630
- kamera_key: "NoblesseOblige",
631
- name: "Noblesse Oblige",
630
+ kamera_key: 'NoblesseOblige',
631
+ name: 'Noblesse Oblige',
632
632
  bonuses: [
633
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Elemental Burst DMG +20%"]),
633
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Elemental Burst DMG +20%']),
634
634
  GenshinObject::ArtifactSetBonus.new(
635
635
  pieces_count: 4,
636
- bonus: ["Using an Elemental Burst increases all party members ATK by 20% for 12s. This effect cannot stack."]
636
+ bonus: ['Using an Elemental Burst increases all party members ATK by 20% for 12s. This effect cannot stack.']
637
637
  )
638
638
  ],
639
639
  max_rarity: 5,
@@ -647,16 +647,16 @@ module GenshinData
647
647
  ).freeze
648
648
 
649
649
  NYMPHS_DREAM = GenshinObject::ArtifactSet.new(
650
- kamera_key: "NymphsDream",
650
+ kamera_key: 'NymphsDream',
651
651
  name: "Nymph's Dream",
652
652
  bonuses: [
653
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Hydro DMG Bonus +15%"]),
653
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Hydro DMG Bonus +15%']),
654
654
  GenshinObject::ArtifactSetBonus.new(
655
655
  pieces_count: 4,
656
656
  bonus: [
657
- "After Normal, Charged, and Plunging Attacks, Elemental Skills, and Elemental Bursts hit opponents, 1 stack of Mirrored Nymph will triggered, lasting 8s.",
658
- "When under the effect of 1, 2, or 3 or more Mirrored Nymph stacks, ATK will be increased by 7%/16%/25%, and Hydro DMG will be increased by 4%/9%/15%.",
659
- "Mirrored Nymph created by Normal, Charged, and Plunging Attacks, Elemental Skills, and Elemental Bursts exist independently."
657
+ 'After Normal, Charged, and Plunging Attacks, Elemental Skills, and Elemental Bursts hit opponents, 1 stack of Mirrored Nymph will triggered, lasting 8s.',
658
+ 'When under the effect of 1, 2, or 3 or more Mirrored Nymph stacks, ATK will be increased by 7%/16%/25%, and Hydro DMG will be increased by 4%/9%/15%.',
659
+ 'Mirrored Nymph created by Normal, Charged, and Plunging Attacks, Elemental Skills, and Elemental Bursts exist independently.'
660
660
  ]
661
661
  )
662
662
  ],
@@ -671,8 +671,8 @@ module GenshinData
671
671
  ).freeze
672
672
 
673
673
  OBSIDIAN_CODEX = GenshinObject::ArtifactSet.new(
674
- kamera_key: "ObsidianCodex",
675
- name: "Obsidian Codex",
674
+ kamera_key: 'ObsidianCodex',
675
+ name: 'Obsidian Codex',
676
676
  bonuses: [
677
677
  GenshinObject::ArtifactSetBonus.new(
678
678
  pieces_count: 2,
@@ -681,8 +681,8 @@ module GenshinData
681
681
  GenshinObject::ArtifactSetBonus.new(
682
682
  pieces_count: 4,
683
683
  bonus: [
684
- "After the equipping character consumes 1 Nightsoul point while on the field, CRIT Rate increases by 40% for 6s.",
685
- "This effect can trigger once every second."
684
+ 'After the equipping character consumes 1 Nightsoul point while on the field, CRIT Rate increases by 40% for 6s.',
685
+ 'This effect can trigger once every second.'
686
686
  ]
687
687
  )
688
688
  ],
@@ -697,20 +697,20 @@ module GenshinData
697
697
  ).freeze
698
698
 
699
699
  OCEAN_HUED_CLAM = GenshinObject::ArtifactSet.new(
700
- kamera_key: "OceanHuedClam",
701
- name: "Ocean-Hued Clam",
700
+ kamera_key: 'OceanHuedClam',
701
+ name: 'Ocean-Hued Clam',
702
702
  bonuses: [
703
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Healing Bonus +15%."]),
703
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Healing Bonus +15%.']),
704
704
  GenshinObject::ArtifactSetBonus.new(
705
705
  pieces_count: 4,
706
706
  bonus: [
707
- "When the character equipping this artifact set heals a character in the party, a Sea-Dyed Foam will appear for 3 seconds, accumulating the amount of HP recovered from healing (including overflow healing).",
708
- "At the end of the duration, the Sea-Dyed Foam will explode, dealing DMG to nearby opponents based on 90% of the accumulated healing.",
709
- "(This DMG is calculated similarly to Reactions such as Electro-Charged, and Superconduct, but it is not affected by Elemental Mastery, Character Levels, or Reaction DMG Bonuses).",
710
- "Only one Sea-Dyed Foam can be produced every 3.5 seconds.",
711
- "Each Sea-Dyed Foam can accumulate up to 30,000 HP (including overflow healing).",
712
- "There can be no more than one Sea-Dyed Foam active at any given time.",
713
- "This effect can still be triggered even when the character who is using this artifact set is not on the field."
707
+ 'When the character equipping this artifact set heals a character in the party, a Sea-Dyed Foam will appear for 3 seconds, accumulating the amount of HP recovered from healing (including overflow healing).',
708
+ 'At the end of the duration, the Sea-Dyed Foam will explode, dealing DMG to nearby opponents based on 90% of the accumulated healing.',
709
+ '(This DMG is calculated similarly to Reactions such as Electro-Charged, and Superconduct, but it is not affected by Elemental Mastery, Character Levels, or Reaction DMG Bonuses).',
710
+ 'Only one Sea-Dyed Foam can be produced every 3.5 seconds.',
711
+ 'Each Sea-Dyed Foam can accumulate up to 30,000 HP (including overflow healing).',
712
+ 'There can be no more than one Sea-Dyed Foam active at any given time.',
713
+ 'This effect can still be triggered even when the character who is using this artifact set is not on the field.'
714
714
  ]
715
715
  )
716
716
  ],
@@ -725,16 +725,16 @@ module GenshinData
725
725
  ).freeze
726
726
 
727
727
  PALE_FLAME = GenshinObject::ArtifactSet.new(
728
- kamera_key: "PaleFlame",
729
- name: "Pale Flame",
728
+ kamera_key: 'PaleFlame',
729
+ name: 'Pale Flame',
730
730
  bonuses: [
731
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Physical DMG Bonus +25%"]),
731
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Physical DMG Bonus +25%']),
732
732
  GenshinObject::ArtifactSetBonus.new(
733
733
  pieces_count: 4,
734
734
  bonus: [
735
- "When an Elemental Skill hits an opponent, ATK is increased by 9% for 7s.",
736
- "This effect stacks up to 2 times and can be triggered once every 0.3s.",
737
- "Once 2 stacks are reached, the 2-set effect is increased by 100%."
735
+ 'When an Elemental Skill hits an opponent, ATK is increased by 9% for 7s.',
736
+ 'This effect stacks up to 2 times and can be triggered once every 0.3s.',
737
+ 'Once 2 stacks are reached, the 2-set effect is increased by 100%.'
738
738
  ]
739
739
  )
740
740
  ],
@@ -749,13 +749,13 @@ module GenshinData
749
749
  ).freeze
750
750
 
751
751
  RETRACING_BOLIDE = GenshinObject::ArtifactSet.new(
752
- kamera_key: "RetracingBolide",
753
- name: "Retracing Bolide",
752
+ kamera_key: 'RetracingBolide',
753
+ name: 'Retracing Bolide',
754
754
  bonuses: [
755
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Increases Shield Strength by 35%."]),
755
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Increases Shield Strength by 35%.']),
756
756
  GenshinObject::ArtifactSetBonus.new(
757
757
  pieces_count: 4,
758
- bonus: ["While protected by a shield, gain an additional 40% Normal and Charged Attack DMG."]
758
+ bonus: ['While protected by a shield, gain an additional 40% Normal and Charged Attack DMG.']
759
759
  )
760
760
  ],
761
761
  max_rarity: 5,
@@ -769,19 +769,19 @@ module GenshinData
769
769
  ).freeze
770
770
 
771
771
  SCROLL_OF_THE_HERO_OF_CINDER_CITY = GenshinObject::ArtifactSet.new(
772
- kamera_key: "ScrollOfTheHeroOfCinderCity",
773
- name: "Scroll of the Hero of Cinder City",
772
+ kamera_key: 'ScrollOfTheHeroOfCinderCity',
773
+ name: 'Scroll of the Hero of Cinder City',
774
774
  bonuses: [
775
775
  GenshinObject::ArtifactSetBonus.new(
776
776
  pieces_count: 2,
777
- bonus: ["When a nearby party member triggers a Nightsoul Burst, the equipping character regenerates 6 Elemental Energy."]
777
+ bonus: ['When a nearby party member triggers a Nightsoul Burst, the equipping character regenerates 6 Elemental Energy.']
778
778
  ),
779
779
  GenshinObject::ArtifactSetBonus.new(
780
780
  pieces_count: 4,
781
781
  bonus: [
782
- "After the equipping character triggers a reaction related to their Elemental Type, all nearby party members gain a 12% Elemental DMG Bonus for the Elemental Types involved in the elemental reaction for 15s.",
782
+ 'After the equipping character triggers a reaction related to their Elemental Type, all nearby party members gain a 12% Elemental DMG Bonus for the Elemental Types involved in the elemental reaction for 15s.',
783
783
  "If the equipping character is in the Nightsoul's Blessing state when triggering this effect, all nearby party members gain an additional 28% Elemental DMG Bonus for the Elemental Types involved in the elemental reaction for 20s.",
784
- "The equipping character can trigger this effect while off-field, and the DMG bonus from Artifact Sets with the same name do not stack."
784
+ 'The equipping character can trigger this effect while off-field, and the DMG bonus from Artifact Sets with the same name do not stack.'
785
785
  ]
786
786
  )
787
787
  ],
@@ -796,15 +796,15 @@ module GenshinData
796
796
  ).freeze
797
797
 
798
798
  SHIMENAWAS_REMINISCENCE = GenshinObject::ArtifactSet.new(
799
- kamera_key: "ShimenawasReminiscence",
799
+ kamera_key: 'ShimenawasReminiscence',
800
800
  name: "Shimenawa's Reminiscence",
801
801
  bonuses: [
802
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["ATK +18%"]),
802
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['ATK +18%']),
803
803
  GenshinObject::ArtifactSetBonus.new(
804
804
  pieces_count: 4,
805
805
  bonus: [
806
- "When casting an Elemental Skill, if the character has 15 or more Energy, they lose 15 Energy and Normal/Charged/Plunging Attack DMG is increased by 50% for 10s.",
807
- "This effect will not trigger again during that duration."
806
+ 'When casting an Elemental Skill, if the character has 15 or more Energy, they lose 15 Energy and Normal/Charged/Plunging Attack DMG is increased by 50% for 10s.',
807
+ 'This effect will not trigger again during that duration.'
808
808
  ]
809
809
  )
810
810
  ],
@@ -819,18 +819,18 @@ module GenshinData
819
819
  ).freeze
820
820
 
821
821
  SILKENS_MOONS_SERENADE = GenshinObject::ArtifactSet.new(
822
- kamera_key: "SilkenMoonsSerenade",
822
+ kamera_key: 'SilkenMoonsSerenade',
823
823
  name: "Silken Moon's Serenade",
824
824
  bonuses: [
825
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Energy Recharge +20%"]),
825
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Energy Recharge +20%']),
826
826
  GenshinObject::ArtifactSetBonus.new(
827
827
  pieces_count: 4,
828
828
  bonus: [
829
- "When dealing Elemental DMG, gain the Gleaming Moon: Devotion effect for 8s.",
829
+ 'When dealing Elemental DMG, gain the Gleaming Moon: Devotion effect for 8s.',
830
830
  "Gleaming Moon: Devotion: Increases all party members' Elemental Mastery by 60/120 when the party's Moonsign is Nascent Gleam/Ascendant Gleam.",
831
- "The equipping character can trigger this effect while off-field.",
831
+ 'The equipping character can trigger this effect while off-field.',
832
832
  "All party members' Lunar Reaction DMG is increased by 10% for each different Gleaming Moon effect that party members have.",
833
- "Effects from Gleaming Moon cannot stack."
833
+ 'Effects from Gleaming Moon cannot stack.'
834
834
  ]
835
835
  )
836
836
  ],
@@ -845,19 +845,19 @@ module GenshinData
845
845
  ).freeze
846
846
 
847
847
  SONG_OF_DAYS_PAST = GenshinObject::ArtifactSet.new(
848
- kamera_key: "SongOfDaysPast",
849
- name: "Song of Days Past",
848
+ kamera_key: 'SongOfDaysPast',
849
+ name: 'Song of Days Past',
850
850
  bonuses: [
851
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Healing Bonus +15%"]),
851
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Healing Bonus +15%']),
852
852
  GenshinObject::ArtifactSetBonus.new(
853
853
  pieces_count: 4,
854
854
  bonus: [
855
- "When the equipping character heals a party member, the Yearning effect will be created for 6s, which records the total amount of healing provided (including overflow healing).",
855
+ 'When the equipping character heals a party member, the Yearning effect will be created for 6s, which records the total amount of healing provided (including overflow healing).',
856
856
  "When the duration expires, the Yearning effect will be transformed into the 'Waves of Days Past' effect:",
857
- "When your active party member hits an opponent with a Normal Attack, Charged Attack, Plunging Attack, Elemental Skill, or Elemental Burst, the DMG dealt will be increased by 8% of the total healing amount recorded by the Yearning effect.",
857
+ 'When your active party member hits an opponent with a Normal Attack, Charged Attack, Plunging Attack, Elemental Skill, or Elemental Burst, the DMG dealt will be increased by 8% of the total healing amount recorded by the Yearning effect.',
858
858
  "The 'Waves of Days Past' effect is removed after it has taken effect 5 times or after 10s.",
859
- "A single instance of the Yearning effect can record up to 15,000 healing, and only a single instance can exist at once, but it can record the healing from multiple equipping characters.",
860
- "Equipping characters on standby can still trigger this effect."
859
+ 'A single instance of the Yearning effect can record up to 15,000 healing, and only a single instance can exist at once, but it can record the healing from multiple equipping characters.',
860
+ 'Equipping characters on standby can still trigger this effect.'
861
861
  ]
862
862
  )
863
863
  ],
@@ -872,16 +872,16 @@ module GenshinData
872
872
  ).freeze
873
873
 
874
874
  TENACITY_OF_THE_MILLELITH = GenshinObject::ArtifactSet.new(
875
- kamera_key: "TenacityOfTheMillelith",
876
- name: "Tenacity of the Millelith",
875
+ kamera_key: 'TenacityOfTheMillelith',
876
+ name: 'Tenacity of the Millelith',
877
877
  bonuses: [
878
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["HP +20%"]),
878
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['HP +20%']),
879
879
  GenshinObject::ArtifactSetBonus.new(
880
880
  pieces_count: 4,
881
881
  bonus: [
882
- "When an Elemental Skill hits an opponent, the ATK of all nearby party members is increased by 20% and their Shield Strength is increased by 30% for 3s.",
883
- "This effect can be triggered once every 0.5s.",
884
- "This effect can still be triggered even when the character who is using this artifact set is not on the field."
882
+ 'When an Elemental Skill hits an opponent, the ATK of all nearby party members is increased by 20% and their Shield Strength is increased by 30% for 3s.',
883
+ 'This effect can be triggered once every 0.5s.',
884
+ 'This effect can still be triggered even when the character who is using this artifact set is not on the field.'
885
885
  ]
886
886
  )
887
887
  ],
@@ -896,16 +896,16 @@ module GenshinData
896
896
  ).freeze
897
897
 
898
898
  THUNDERING_FURY = GenshinObject::ArtifactSet.new(
899
- kamera_key: "ThunderingFury",
900
- name: "Thundering Fury",
899
+ kamera_key: 'ThunderingFury',
900
+ name: 'Thundering Fury',
901
901
  bonuses: [
902
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Electro DMG Bonus +15%"]),
902
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Electro DMG Bonus +15%']),
903
903
  GenshinObject::ArtifactSetBonus.new(
904
904
  pieces_count: 4,
905
905
  bonus: [
906
- "Increases DMG caused by Overloaded, Electro-Charged, Superconduct, and Hyperbloom by 40%, and the DMG Bonus conferred by Aggravate is increased by 20%.",
907
- "When Quicken or the aforementioned Elemental Reactions are triggered, Elemental Skill CD is decreased by 1s.",
908
- "Can only occur once every 0.8s."
906
+ 'Increases DMG caused by Overloaded, Electro-Charged, Superconduct, and Hyperbloom by 40%, and the DMG Bonus conferred by Aggravate is increased by 20%.',
907
+ 'When Quicken or the aforementioned Elemental Reactions are triggered, Elemental Skill CD is decreased by 1s.',
908
+ 'Can only occur once every 0.8s.'
909
909
  ]
910
910
  )
911
911
  ],
@@ -920,13 +920,13 @@ module GenshinData
920
920
  ).freeze
921
921
 
922
922
  THUNDERSOOTHER = GenshinObject::ArtifactSet.new(
923
- kamera_key: "Thundersoother",
924
- name: "Thundersoother",
923
+ kamera_key: 'Thundersoother',
924
+ name: 'Thundersoother',
925
925
  bonuses: [
926
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Electro RES increased by 40%."]),
926
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Electro RES increased by 40%.']),
927
927
  GenshinObject::ArtifactSetBonus.new(
928
928
  pieces_count: 4,
929
- bonus: ["Increases DMG against opponents affected by Electro by 35%."]
929
+ bonus: ['Increases DMG against opponents affected by Electro by 35%.']
930
930
  )
931
931
  ],
932
932
  max_rarity: 5,
@@ -940,20 +940,20 @@ module GenshinData
940
940
  ).freeze
941
941
 
942
942
  UNFINISHED_REVERIE = GenshinObject::ArtifactSet.new(
943
- kamera_key: "UnfinishedReverie",
944
- name: "Unfinished Reverie",
943
+ kamera_key: 'UnfinishedReverie',
944
+ name: 'Unfinished Reverie',
945
945
  bonuses: [
946
946
  GenshinObject::ArtifactSetBonus.new(
947
947
  pieces_count: 2,
948
- bonus: ["ATK +18%"]
948
+ bonus: ['ATK +18%']
949
949
  ),
950
950
  GenshinObject::ArtifactSetBonus.new(
951
951
  pieces_count: 4,
952
952
  bonus: [
953
- "After leaving combat for 3s, DMG dealt increased by 50%.",
954
- "In combat, if no Burning opponents are nearby for more than 6s, this DMG Bonus will decrease by 10% per second until it reaches 0%.",
955
- "When a Burning opponent exists, it will increase by 10% instead until it reaches 50%.",
956
- "This effect still triggers if the equipping character is off-field."
953
+ 'After leaving combat for 3s, DMG dealt increased by 50%.',
954
+ 'In combat, if no Burning opponents are nearby for more than 6s, this DMG Bonus will decrease by 10% per second until it reaches 0%.',
955
+ 'When a Burning opponent exists, it will increase by 10% instead until it reaches 50%.',
956
+ 'This effect still triggers if the equipping character is off-field.'
957
957
  ]
958
958
  )
959
959
  ],
@@ -968,19 +968,19 @@ module GenshinData
968
968
  ).freeze
969
969
 
970
970
  VERMILLION_HEREAFTER = GenshinObject::ArtifactSet.new(
971
- kamera_key: "VermillionHereafter",
972
- name: "Vermillion Hereafter",
971
+ kamera_key: 'VermillionHereafter',
972
+ name: 'Vermillion Hereafter',
973
973
  bonuses: [
974
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["ATK +18%."]),
974
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['ATK +18%.']),
975
975
  GenshinObject::ArtifactSetBonus.new(
976
976
  pieces_count: 4,
977
977
  bonus: [
978
- "After using an Elemental Burst. this character will gain the Nascent Light effect, increasing their ATK by 8% for 16s.",
978
+ 'After using an Elemental Burst. this character will gain the Nascent Light effect, increasing their ATK by 8% for 16s.',
979
979
  "When the character's HP decreases, their ATK will further increase by 10%.",
980
- "This increase can occur this way maximum of 4 times.",
981
- "This effect can be triggered once every 0.8s.",
982
- "Nascent Light will be dispelled when the character leaves the field.",
983
- "If an Elemental Burst is used again during the duration of Nascent Light, the original Nascent Light will be dispelled."
980
+ 'This increase can occur this way maximum of 4 times.',
981
+ 'This effect can be triggered once every 0.8s.',
982
+ 'Nascent Light will be dispelled when the character leaves the field.',
983
+ 'If an Elemental Burst is used again during the duration of Nascent Light, the original Nascent Light will be dispelled.'
984
984
  ]
985
985
  )
986
986
  ],
@@ -995,10 +995,10 @@ module GenshinData
995
995
  ).freeze
996
996
 
997
997
  VIRIDESCENT_VENERER = GenshinObject::ArtifactSet.new(
998
- kamera_key: "ViridescentVenerer",
999
- name: "Viridescent Venerer",
998
+ kamera_key: 'ViridescentVenerer',
999
+ name: 'Viridescent Venerer',
1000
1000
  bonuses: [
1001
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Anemo DMG Bonus +15%"]),
1001
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Anemo DMG Bonus +15%']),
1002
1002
  GenshinObject::ArtifactSetBonus.new(
1003
1003
  pieces_count: 4,
1004
1004
  bonus: [
@@ -1017,18 +1017,18 @@ module GenshinData
1017
1017
  ).freeze
1018
1018
 
1019
1019
  VOURUKASHAS_GLOW = GenshinObject::ArtifactSet.new(
1020
- kamera_key: "VourukashasGlow",
1020
+ kamera_key: 'VourukashasGlow',
1021
1021
  name: "Vourukasha's Glow",
1022
1022
  bonuses: [
1023
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["HP +20%"]),
1023
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['HP +20%']),
1024
1024
  GenshinObject::ArtifactSetBonus.new(
1025
1025
  pieces_count: 4,
1026
1026
  bonus: [
1027
- "Elemental Skill and Elemental Burst DMG will be increased by 10%.",
1028
- "After the equipping character takes DMG, the aforementioned DMG Bonus is increased by 80% for 5s.",
1029
- "This effect increase can have 5 stacks.",
1030
- "The duration of each stack is counted independently.",
1031
- "These effects can be triggered even when the equipping character is not on the field."
1027
+ 'Elemental Skill and Elemental Burst DMG will be increased by 10%.',
1028
+ 'After the equipping character takes DMG, the aforementioned DMG Bonus is increased by 80% for 5s.',
1029
+ 'This effect increase can have 5 stacks.',
1030
+ 'The duration of each stack is counted independently.',
1031
+ 'These effects can be triggered even when the equipping character is not on the field.'
1032
1032
  ]
1033
1033
  )
1034
1034
  ],
@@ -1043,13 +1043,13 @@ module GenshinData
1043
1043
  ).freeze
1044
1044
 
1045
1045
  WANDERERS_TROUPE = GenshinObject::ArtifactSet.new(
1046
- kamera_key: "WanderersTroupe",
1046
+ kamera_key: 'WanderersTroupe',
1047
1047
  name: "Wanderer's Troupe",
1048
1048
  bonuses: [
1049
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Increases Elemental Mastery by 80."]),
1049
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Increases Elemental Mastery by 80.']),
1050
1050
  GenshinObject::ArtifactSetBonus.new(
1051
1051
  pieces_count: 4,
1052
- bonus: ["Increases Charged Attack DMG by 35% if the character uses a Catalyst or Bow."]
1052
+ bonus: ['Increases Charged Attack DMG by 35% if the character uses a Catalyst or Bow.']
1053
1053
  )
1054
1054
  ],
1055
1055
  max_rarity: 5,
@@ -1063,13 +1063,13 @@ module GenshinData
1063
1063
  ).freeze
1064
1064
 
1065
1065
  BERSERKER = GenshinObject::ArtifactSet.new(
1066
- kamera_key: "Berserker",
1067
- name: "Berserker",
1066
+ kamera_key: 'Berserker',
1067
+ name: 'Berserker',
1068
1068
  bonuses: [
1069
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["CRIT Rate +12%"]),
1069
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['CRIT Rate +12%']),
1070
1070
  GenshinObject::ArtifactSetBonus.new(
1071
1071
  pieces_count: 4,
1072
- bonus: ["When HP is below 70%, CRIT Rate increases by an additional 24%."]
1072
+ bonus: ['When HP is below 70%, CRIT Rate increases by an additional 24%.']
1073
1073
  )
1074
1074
  ],
1075
1075
  max_rarity: 4,
@@ -1083,13 +1083,13 @@ module GenshinData
1083
1083
  ).freeze
1084
1084
 
1085
1085
  BRAVE_HEART = GenshinObject::ArtifactSet.new(
1086
- kamera_key: "BraveHeart",
1087
- name: "Brave Heart",
1086
+ kamera_key: 'BraveHeart',
1087
+ name: 'Brave Heart',
1088
1088
  bonuses: [
1089
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["ATK +18%."]),
1089
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['ATK +18%.']),
1090
1090
  GenshinObject::ArtifactSetBonus.new(
1091
1091
  pieces_count: 4,
1092
- bonus: ["Increases DMG by 30% against opponents with more than 50% HP."]
1092
+ bonus: ['Increases DMG by 30% against opponents with more than 50% HP.']
1093
1093
  )
1094
1094
  ],
1095
1095
  max_rarity: 4,
@@ -1103,10 +1103,10 @@ module GenshinData
1103
1103
  ).freeze
1104
1104
 
1105
1105
  DEFENDERS_WILL = GenshinObject::ArtifactSet.new(
1106
- kamera_key: "DefendersWill",
1106
+ kamera_key: 'DefendersWill',
1107
1107
  name: "Defender's Will",
1108
1108
  bonuses: [
1109
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["DEF +30%"]),
1109
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['DEF +30%']),
1110
1110
  GenshinObject::ArtifactSetBonus.new(
1111
1111
  pieces_count: 4,
1112
1112
  bonus: [
@@ -1125,15 +1125,15 @@ module GenshinData
1125
1125
  ).freeze
1126
1126
 
1127
1127
  GAMBLER = GenshinObject::ArtifactSet.new(
1128
- kamera_key: "Gambler",
1129
- name: "Gambler",
1128
+ kamera_key: 'Gambler',
1129
+ name: 'Gambler',
1130
1130
  bonuses: [
1131
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Increases Elemental Skill DMG by 20%."]),
1131
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Increases Elemental Skill DMG by 20%.']),
1132
1132
  GenshinObject::ArtifactSetBonus.new(
1133
1133
  pieces_count: 4,
1134
1134
  bonus: [
1135
- "Defeating an opponent has 100% chance to remove Elemental Skill CD.",
1136
- "Can only occur once every 15s."
1135
+ 'Defeating an opponent has 100% chance to remove Elemental Skill CD.',
1136
+ 'Can only occur once every 15s.'
1137
1137
  ]
1138
1138
  )
1139
1139
  ],
@@ -1148,10 +1148,10 @@ module GenshinData
1148
1148
  ).freeze
1149
1149
 
1150
1150
  INSTRUCTOR = GenshinObject::ArtifactSet.new(
1151
- kamera_key: "Instructor",
1152
- name: "Instructor",
1151
+ kamera_key: 'Instructor',
1152
+ name: 'Instructor',
1153
1153
  bonuses: [
1154
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Increases Elemental Mastery by 80."]),
1154
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Increases Elemental Mastery by 80.']),
1155
1155
  GenshinObject::ArtifactSetBonus.new(
1156
1156
  pieces_count: 4,
1157
1157
  bonus: [
@@ -1170,13 +1170,13 @@ module GenshinData
1170
1170
  ).freeze
1171
1171
 
1172
1172
  MARTIAL_ARTIST = GenshinObject::ArtifactSet.new(
1173
- kamera_key: "MartialArtist",
1174
- name: "Martial Artist",
1173
+ kamera_key: 'MartialArtist',
1174
+ name: 'Martial Artist',
1175
1175
  bonuses: [
1176
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Normal and Charged Attack DMG +15%"]),
1176
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Normal and Charged Attack DMG +15%']),
1177
1177
  GenshinObject::ArtifactSetBonus.new(
1178
1178
  pieces_count: 4,
1179
- bonus: ["After using Elemental Skill, increases Normal Attack and Charged Attack DMG by 25% for 8s."]
1179
+ bonus: ['After using Elemental Skill, increases Normal Attack and Charged Attack DMG by 25% for 8s.']
1180
1180
  )
1181
1181
  ],
1182
1182
  max_rarity: 4,
@@ -1190,10 +1190,10 @@ module GenshinData
1190
1190
  ).freeze
1191
1191
 
1192
1192
  PRAYERS_FOR_DESTINY = GenshinObject::ArtifactSet.new(
1193
- kamera_key: "PrayersForDestiny",
1194
- name: "Prayers for Destiny",
1193
+ kamera_key: 'PrayersForDestiny',
1194
+ name: 'Prayers for Destiny',
1195
1195
  bonuses: [
1196
- GenshinObject::ArtifactSetBonus.new(pieces_count: 1, bonus: ["Affected by Hydro for 40% less time."])
1196
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 1, bonus: ['Affected by Hydro for 40% less time.'])
1197
1197
  ],
1198
1198
  max_rarity: 4,
1199
1199
  slots: {
@@ -1206,10 +1206,10 @@ module GenshinData
1206
1206
  ).freeze
1207
1207
 
1208
1208
  PRAYERS_FOR_ILLUMINATION = GenshinObject::ArtifactSet.new(
1209
- kamera_key: "PrayersForIllumination",
1210
- name: "Prayers for Illumination",
1209
+ kamera_key: 'PrayersForIllumination',
1210
+ name: 'Prayers for Illumination',
1211
1211
  bonuses: [
1212
- GenshinObject::ArtifactSetBonus.new(pieces_count: 1, bonus: ["Affected by Pyro for 40% less time."])
1212
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 1, bonus: ['Affected by Pyro for 40% less time.'])
1213
1213
  ],
1214
1214
  max_rarity: 4,
1215
1215
  slots: {
@@ -1222,10 +1222,10 @@ module GenshinData
1222
1222
  ).freeze
1223
1223
 
1224
1224
  PRAYERS_TO_SPRINGTIME = GenshinObject::ArtifactSet.new(
1225
- kamera_key: "PrayersToSpringtime",
1226
- name: "Prayers to Springtime",
1225
+ kamera_key: 'PrayersToSpringtime',
1226
+ name: 'Prayers to Springtime',
1227
1227
  bonuses: [
1228
- GenshinObject::ArtifactSetBonus.new(pieces_count: 1, bonus: ["Affected by Cryo for 40% less time."])
1228
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 1, bonus: ['Affected by Cryo for 40% less time.'])
1229
1229
  ],
1230
1230
  max_rarity: 4,
1231
1231
  slots: {
@@ -1238,10 +1238,10 @@ module GenshinData
1238
1238
  ).freeze
1239
1239
 
1240
1240
  PRAYERS_FOR_WISDOM = GenshinObject::ArtifactSet.new(
1241
- kamera_key: "PrayersForWisdom",
1242
- name: "Prayers for Wisdom",
1241
+ kamera_key: 'PrayersForWisdom',
1242
+ name: 'Prayers for Wisdom',
1243
1243
  bonuses: [
1244
- GenshinObject::ArtifactSetBonus.new(pieces_count: 1, bonus: ["Affected by Electro for 40% less time."])
1244
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 1, bonus: ['Affected by Electro for 40% less time.'])
1245
1245
  ],
1246
1246
  max_rarity: 4,
1247
1247
  slots: {
@@ -1254,11 +1254,11 @@ module GenshinData
1254
1254
  ).freeze
1255
1255
 
1256
1256
  RESOLUTION_OF_SOJOURNER = GenshinObject::ArtifactSet.new(
1257
- kamera_key: "ResolutionOfSojourner",
1258
- name: "Resolution of Sojourner",
1257
+ kamera_key: 'ResolutionOfSojourner',
1258
+ name: 'Resolution of Sojourner',
1259
1259
  bonuses: [
1260
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["ATK +18%"]),
1261
- GenshinObject::ArtifactSetBonus.new(pieces_count: 4, bonus: ["Increases Charged Attack CRIT Rate by 30%."])
1260
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['ATK +18%']),
1261
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 4, bonus: ['Increases Charged Attack CRIT Rate by 30%.'])
1262
1262
  ],
1263
1263
  max_rarity: 4,
1264
1264
  slots: {
@@ -1271,14 +1271,14 @@ module GenshinData
1271
1271
  ).freeze
1272
1272
 
1273
1273
  SCHOLAR = GenshinObject::ArtifactSet.new(
1274
- kamera_key: "Scholar",
1275
- name: "Scholar",
1274
+ kamera_key: 'Scholar',
1275
+ name: 'Scholar',
1276
1276
  bonuses: [
1277
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Energy Recharge +20%"]),
1277
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Energy Recharge +20%']),
1278
1278
  GenshinObject::ArtifactSetBonus.new(
1279
1279
  pieces_count: 4,
1280
1280
  bonus: [
1281
- "Gaining Elemental Particles or Orbs gives 3 Energy to all party members who have a bow or a catalyst equipped. Can only occur once every 3s."
1281
+ 'Gaining Elemental Particles or Orbs gives 3 Energy to all party members who have a bow or a catalyst equipped. Can only occur once every 3s.'
1282
1282
  ]
1283
1283
  )
1284
1284
  ],
@@ -1293,14 +1293,14 @@ module GenshinData
1293
1293
  ).freeze
1294
1294
 
1295
1295
  THE_EXILE = GenshinObject::ArtifactSet.new(
1296
- kamera_key: "TheExile",
1297
- name: "The Exile",
1296
+ kamera_key: 'TheExile',
1297
+ name: 'The Exile',
1298
1298
  bonuses: [
1299
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Energy Recharge +20%"]),
1299
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Energy Recharge +20%']),
1300
1300
  GenshinObject::ArtifactSetBonus.new(
1301
1301
  pieces_count: 4,
1302
1302
  bonus: [
1303
- "Using an Elemental Burst regenerates 2 Energy for all party members (excluding the wearer) every 2s for 6s. This effect cannot stack."
1303
+ 'Using an Elemental Burst regenerates 2 Energy for all party members (excluding the wearer) every 2s for 6s. This effect cannot stack.'
1304
1304
  ]
1305
1305
  )
1306
1306
  ],
@@ -1315,15 +1315,15 @@ module GenshinData
1315
1315
  ).freeze
1316
1316
 
1317
1317
  TINY_MIRACLE = GenshinObject::ArtifactSet.new(
1318
- kamera_key: "TinyMiracle",
1319
- name: "Tiny Miracle",
1318
+ kamera_key: 'TinyMiracle',
1319
+ name: 'Tiny Miracle',
1320
1320
  bonuses: [
1321
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["All Elemental RES increased by 20%."]),
1321
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['All Elemental RES increased by 20%.']),
1322
1322
  GenshinObject::ArtifactSetBonus.new(
1323
1323
  pieces_count: 4,
1324
1324
  bonus: [
1325
- "Incoming Elemental DMG increases corresponding Elemental RES by 30% for 10s.",
1326
- "Can only occur once every 10s."
1325
+ 'Incoming Elemental DMG increases corresponding Elemental RES by 30% for 10s.',
1326
+ 'Can only occur once every 10s.'
1327
1327
  ]
1328
1328
  )
1329
1329
  ],
@@ -1338,11 +1338,11 @@ module GenshinData
1338
1338
  ).freeze
1339
1339
 
1340
1340
  ADVENTURER = GenshinObject::ArtifactSet.new(
1341
- kamera_key: "Adventurer",
1342
- name: "Adventurer",
1341
+ kamera_key: 'Adventurer',
1342
+ name: 'Adventurer',
1343
1343
  bonuses: [
1344
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Max HP increased by 1,000."]),
1345
- GenshinObject::ArtifactSetBonus.new(pieces_count: 4, bonus: ["Opening a chest regenerates 30% Max HP over 5s."])
1344
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Max HP increased by 1,000.']),
1345
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 4, bonus: ['Opening a chest regenerates 30% Max HP over 5s.'])
1346
1346
  ],
1347
1347
  max_rarity: 3,
1348
1348
  slots: {
@@ -1355,11 +1355,11 @@ module GenshinData
1355
1355
  ).freeze
1356
1356
 
1357
1357
  LUCKY_DOG = GenshinObject::ArtifactSet.new(
1358
- kamera_key: "LuckyDog",
1359
- name: "Lucky Dog",
1358
+ kamera_key: 'LuckyDog',
1359
+ name: 'Lucky Dog',
1360
1360
  bonuses: [
1361
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["DEF increased by 100."]),
1362
- GenshinObject::ArtifactSetBonus.new(pieces_count: 4, bonus: ["Picking up Mora restores 300 HP."])
1361
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['DEF increased by 100.']),
1362
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 4, bonus: ['Picking up Mora restores 300 HP.'])
1363
1363
  ],
1364
1364
  max_rarity: 3,
1365
1365
  slots: {
@@ -1372,11 +1372,11 @@ module GenshinData
1372
1372
  ).freeze
1373
1373
 
1374
1374
  TRAVELING_DOCTOR = GenshinObject::ArtifactSet.new(
1375
- kamera_key: "TravelingDoctor",
1376
- name: "Traveling Doctor",
1375
+ kamera_key: 'TravelingDoctor',
1376
+ name: 'Traveling Doctor',
1377
1377
  bonuses: [
1378
- GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ["Increases incoming healing by 20%."]),
1379
- GenshinObject::ArtifactSetBonus.new(pieces_count: 4, bonus: ["Using Elemental Burst restores 20% HP."])
1378
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 2, bonus: ['Increases incoming healing by 20%.']),
1379
+ GenshinObject::ArtifactSetBonus.new(pieces_count: 4, bonus: ['Using Elemental Burst restores 20% HP.'])
1380
1380
  ],
1381
1381
  max_rarity: 3,
1382
1382
  slots: {
@@ -1389,8 +1389,8 @@ module GenshinData
1389
1389
  ).freeze
1390
1390
 
1391
1391
  INITIATE = GenshinObject::ArtifactSet.new(
1392
- kamera_key: "Initiate",
1393
- name: "Initiate",
1392
+ kamera_key: 'Initiate',
1393
+ name: 'Initiate',
1394
1394
  bonuses: [],
1395
1395
  max_rarity: 1,
1396
1396
  slots: {