@opencharacter/orc-sf-2e 0.2.0 → 0.3.0

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 (91) hide show
  1. package/README.md +54 -5
  2. package/content/classes/envoy.yaml +2 -52
  3. package/content/classes/mystic/connections/akashic.yaml +1 -1
  4. package/content/classes/mystic/connections/elemental.yaml +62 -1
  5. package/content/classes/mystic/connections/healing.yaml +1 -1
  6. package/content/classes/mystic/connections/rhythm.yaml +1 -1
  7. package/content/classes/mystic/connections/shadow.yaml +1 -1
  8. package/content/classes/mystic.yaml +2 -51
  9. package/content/classes/operative.yaml +1 -44
  10. package/content/classes/solarian.yaml +1 -44
  11. package/content/classes/soldier.yaml +2 -51
  12. package/content/classes/witchwarper/anchors/core-memories.yaml +1 -1
  13. package/content/classes/witchwarper/anchors/focal-point.yaml +1 -1
  14. package/content/classes/witchwarper/anchors/tangible-object.yaml +1 -1
  15. package/content/classes/witchwarper/paradoxes/analyst.yaml +1 -1
  16. package/content/classes/witchwarper/paradoxes/anomaly.yaml +1 -1
  17. package/content/classes/witchwarper/paradoxes/lost-history.yaml +1 -1
  18. package/content/classes/witchwarper/paradoxes/precog.yaml +1 -1
  19. package/content/classes/witchwarper.yaml +3 -55
  20. package/content/effects/treated-disease.yaml +4 -0
  21. package/content/effects/treated-poison.yaml +4 -0
  22. package/content/feats/ancestry/fixation.yaml +11 -49
  23. package/content/feats/ancestry/harmonic-sensitivity.yaml +16 -6
  24. package/content/feats/ancestry/lashunta-lore.yaml +6 -0
  25. package/content/feats/archetype/envoy/envoy-dedication.yaml +2 -88
  26. package/content/feats/mystic/new-epiphany.yaml +1 -1
  27. package/content/feats/mystic/realized-epiphany.yaml +1 -1
  28. package/content/feats/mystic/syncretic-epiphany.yaml +1 -1
  29. package/content/feats/skill/additional-lore.yaml +54 -391
  30. package/content/feats/skill/assurance.yaml +3 -57
  31. package/content/feats/skill/skill-training.yaml +1 -57
  32. package/content/features/envoy/style/from-the-front.yaml +1 -1
  33. package/content/features/envoy/style/from-the-shadows.yaml +1 -1
  34. package/content/features/envoy/style/guns-blazing.yaml +1 -1
  35. package/content/features/envoy/style/in-the-spotlight.yaml +1 -1
  36. package/content/features/envoy/style/infosphere-director.yaml +1 -1
  37. package/content/features/envoy/style/through-desperate-times.yaml +1 -1
  38. package/content/features/soldier/style/action-hero.yaml +1 -1
  39. package/content/features/soldier/style/armor-storm.yaml +1 -1
  40. package/content/features/soldier/style/bombard.yaml +1 -1
  41. package/content/features/soldier/style/close-quarters.yaml +1 -1
  42. package/content/features/soldier/style/erudite-warrior.yaml +1 -1
  43. package/content/gear/comm-unit.yaml +1 -0
  44. package/content/spells/elemental-barrier.yaml +2 -1
  45. package/content/spells/elemental-weapon.yaml +10 -1
  46. package/content/spells/guidance.yaml +2 -0
  47. package/content/spells/sure-strike.yaml +8 -1
  48. package/content/spells/true-target.yaml +2 -0
  49. package/content/templates/elemental/air.yaml +6 -0
  50. package/content/templates/elemental/earth.yaml +6 -0
  51. package/content/templates/elemental/fire.yaml +6 -0
  52. package/content/templates/elemental/metal.yaml +6 -0
  53. package/content/templates/elemental/water.yaml +6 -0
  54. package/content/templates/elemental/wood.yaml +6 -0
  55. package/dist/i18n/en.js +1 -1
  56. package/dist/i18n/en.json +50 -59
  57. package/dist/index.js +1 -1
  58. package/dist/release.json +5419 -3339
  59. package/i18n/en/ancestry-feats.yaml +4 -40
  60. package/i18n/en/archetypes.yaml +2 -2
  61. package/i18n/en/core.yaml +8 -2
  62. package/i18n/en/headline.yaml +4 -0
  63. package/i18n/en/mystic.yaml +12 -0
  64. package/i18n/en/sf-core.yaml +0 -11
  65. package/i18n/en/skills.yaml +6 -3
  66. package/i18n/en/tags.yaml +2 -0
  67. package/i18n/en/types.yaml +1 -0
  68. package/i18n/en.yaml +14 -1
  69. package/pack.yaml +2 -2
  70. package/package.json +2 -2
  71. package/rules/advancement.yaml +1 -0
  72. package/rules/afflictions.yaml +4 -5
  73. package/rules/archetypes.yaml +1 -0
  74. package/rules/building.yaml +7 -1
  75. package/rules/checks.yaml +1 -1
  76. package/rules/conditions.yaml +1 -0
  77. package/rules/core.yaml +1 -0
  78. package/rules/creation.yaml +18 -0
  79. package/rules/equipment.yaml +7 -2
  80. package/rules/heritages.yaml +1 -1
  81. package/rules/layout.yaml +62 -4
  82. package/rules/mystic.yaml +24 -1
  83. package/rules/skill-actions-stealth.yaml +1 -1
  84. package/rules/skills.yaml +254 -81
  85. package/rules/solarian.yaml +1 -2
  86. package/rules/spellcasting.yaml +89 -21
  87. package/rules/spells-high.yaml +3 -3
  88. package/rules/strikes.yaml +3 -1
  89. package/rules/tags.yaml +6 -0
  90. package/rules/witchwarper.yaml +7 -7
  91. package/upgrades/0.2.0-to-0.3.0.yaml +12 -0
@@ -6,394 +6,57 @@ choices:
6
6
  - id: lore
7
7
  unique: additional-lore
8
8
  from:
9
- options:
10
- - id: academia
11
- effects:
12
- - target: skills.trained
13
- op: grant
14
- value: { tag: skill.lore.academia }
15
- when: "!('skill.lore.academia' in skills.chosen)"
16
- - { target: skills.trainings, op: add, value: 1 }
17
- - target: skills.lore.academia.granted
18
- op: add
19
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
20
- - id: alcohol
21
- effects:
22
- - target: skills.trained
23
- op: grant
24
- value: { tag: skill.lore.alcohol }
25
- when: "!('skill.lore.alcohol' in skills.chosen)"
26
- - { target: skills.trainings, op: add, value: 1 }
27
- - target: skills.lore.alcohol.granted
28
- op: add
29
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
30
- - id: android
31
- effects:
32
- - target: skills.trained
33
- op: grant
34
- value: { tag: skill.lore.android }
35
- when: "!('skill.lore.android' in skills.chosen)"
36
- - { target: skills.trainings, op: add, value: 1 }
37
- - target: skills.lore.android.granted
38
- op: add
39
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
40
- - id: animal
41
- effects:
42
- - target: skills.trained
43
- op: grant
44
- value: { tag: skill.lore.animal }
45
- when: "!('skill.lore.animal' in skills.chosen)"
46
- - { target: skills.trainings, op: add, value: 1 }
47
- - target: skills.lore.animal.granted
48
- op: add
49
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
50
- - id: art
51
- effects:
52
- - target: skills.trained
53
- op: grant
54
- value: { tag: skill.lore.art }
55
- when: "!('skill.lore.art' in skills.chosen)"
56
- - { target: skills.trainings, op: add, value: 1 }
57
- - target: skills.lore.art.granted
58
- op: add
59
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
60
- - id: augmentation
61
- effects:
62
- - target: skills.trained
63
- op: grant
64
- value: { tag: skill.lore.augmentation }
65
- when: "!('skill.lore.augmentation' in skills.chosen)"
66
- - { target: skills.trainings, op: add, value: 1 }
67
- - target: skills.lore.augmentation.granted
68
- op: add
69
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
70
- - id: barathu
71
- effects:
72
- - target: skills.trained
73
- op: grant
74
- value: { tag: skill.lore.barathu }
75
- when: "!('skill.lore.barathu' in skills.chosen)"
76
- - { target: skills.trainings, op: add, value: 1 }
77
- - target: skills.lore.barathu.granted
78
- op: add
79
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
80
- - id: borai
81
- effects:
82
- - target: skills.trained
83
- op: grant
84
- value: { tag: skill.lore.borai }
85
- when: "!('skill.lore.borai' in skills.chosen)"
86
- - { target: skills.trainings, op: add, value: 1 }
87
- - target: skills.lore.borai.granted
88
- op: add
89
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
90
- - id: business
91
- effects:
92
- - target: skills.trained
93
- op: grant
94
- value: { tag: skill.lore.business }
95
- when: "!('skill.lore.business' in skills.chosen)"
96
- - { target: skills.trainings, op: add, value: 1 }
97
- - target: skills.lore.business.granted
98
- op: add
99
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
100
- - id: cooking
101
- effects:
102
- - target: skills.trained
103
- op: grant
104
- value: { tag: skill.lore.cooking }
105
- when: "!('skill.lore.cooking' in skills.chosen)"
106
- - { target: skills.trainings, op: add, value: 1 }
107
- - target: skills.lore.cooking.granted
108
- op: add
109
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
110
- - id: corporate
111
- effects:
112
- - target: skills.trained
113
- op: grant
114
- value: { tag: skill.lore.corporate }
115
- when: "!('skill.lore.corporate' in skills.chosen)"
116
- - { target: skills.trainings, op: add, value: 1 }
117
- - target: skills.lore.corporate.granted
118
- op: add
119
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
120
- - id: games
121
- effects:
122
- - target: skills.trained
123
- op: grant
124
- value: { tag: skill.lore.games }
125
- when: "!('skill.lore.games' in skills.chosen)"
126
- - { target: skills.trainings, op: add, value: 1 }
127
- - target: skills.lore.games.granted
128
- op: add
129
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
130
- - id: genealogy
131
- effects:
132
- - target: skills.trained
133
- op: grant
134
- value: { tag: skill.lore.genealogy }
135
- when: "!('skill.lore.genealogy' in skills.chosen)"
136
- - { target: skills.trainings, op: add, value: 1 }
137
- - target: skills.lore.genealogy.granted
138
- op: add
139
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
140
- - id: history
141
- effects:
142
- - target: skills.trained
143
- op: grant
144
- value: { tag: skill.lore.history }
145
- when: "!('skill.lore.history' in skills.chosen)"
146
- - { target: skills.trainings, op: add, value: 1 }
147
- - target: skills.lore.history.granted
148
- op: add
149
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
150
- - id: hyperspace
151
- effects:
152
- - target: skills.trained
153
- op: grant
154
- value: { tag: skill.lore.hyperspace }
155
- when: "!('skill.lore.hyperspace' in skills.chosen)"
156
- - { target: skills.trainings, op: add, value: 1 }
157
- - target: skills.lore.hyperspace.granted
158
- op: add
159
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
160
- - id: infosphere
161
- effects:
162
- - target: skills.trained
163
- op: grant
164
- value: { tag: skill.lore.infosphere }
165
- when: "!('skill.lore.infosphere' in skills.chosen)"
166
- - { target: skills.trainings, op: add, value: 1 }
167
- - target: skills.lore.infosphere.granted
168
- op: add
169
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
170
- - id: kasatha
171
- effects:
172
- - target: skills.trained
173
- op: grant
174
- value: { tag: skill.lore.kasatha }
175
- when: "!('skill.lore.kasatha' in skills.chosen)"
176
- - { target: skills.trainings, op: add, value: 1 }
177
- - target: skills.lore.kasatha.granted
178
- op: add
179
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
180
- - id: labor
181
- effects:
182
- - target: skills.trained
183
- op: grant
184
- value: { tag: skill.lore.labor }
185
- when: "!('skill.lore.labor' in skills.chosen)"
186
- - { target: skills.trainings, op: add, value: 1 }
187
- - target: skills.lore.labor.granted
188
- op: add
189
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
190
- - id: lashunta
191
- effects:
192
- - target: skills.trained
193
- op: grant
194
- value: { tag: skill.lore.lashunta }
195
- when: "!('skill.lore.lashunta' in skills.chosen)"
196
- - { target: skills.trainings, op: add, value: 1 }
197
- - target: skills.lore.lashunta.granted
198
- op: add
199
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
200
- - id: legal
201
- effects:
202
- - target: skills.trained
203
- op: grant
204
- value: { tag: skill.lore.legal }
205
- when: "!('skill.lore.legal' in skills.chosen)"
206
- - { target: skills.trainings, op: add, value: 1 }
207
- - target: skills.lore.legal.granted
208
- op: add
209
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
210
- - id: life-science
211
- effects:
212
- - target: skills.trained
213
- op: grant
214
- value: { tag: skill.lore.life-science }
215
- when: "!('skill.lore.life-science' in skills.chosen)"
216
- - { target: skills.trainings, op: add, value: 1 }
217
- - target: skills.lore.lifeScience.granted
218
- op: add
219
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
220
- - id: media
221
- effects:
222
- - target: skills.trained
223
- op: grant
224
- value: { tag: skill.lore.media }
225
- when: "!('skill.lore.media' in skills.chosen)"
226
- - { target: skills.trainings, op: add, value: 1 }
227
- - target: skills.lore.media.granted
228
- op: add
229
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
230
- - id: mining
231
- effects:
232
- - target: skills.trained
233
- op: grant
234
- value: { tag: skill.lore.mining }
235
- when: "!('skill.lore.mining' in skills.chosen)"
236
- - { target: skills.trainings, op: add, value: 1 }
237
- - target: skills.lore.mining.granted
238
- op: add
239
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
240
- - id: pahtra
241
- effects:
242
- - target: skills.trained
243
- op: grant
244
- value: { tag: skill.lore.pahtra }
245
- when: "!('skill.lore.pahtra' in skills.chosen)"
246
- - { target: skills.trainings, op: add, value: 1 }
247
- - target: skills.lore.pahtra.granted
248
- op: add
249
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
250
- - id: physical-science
251
- effects:
252
- - target: skills.trained
253
- op: grant
254
- value: { tag: skill.lore.physical-science }
255
- when: "!('skill.lore.physical-science' in skills.chosen)"
256
- - { target: skills.trainings, op: add, value: 1 }
257
- - target: skills.lore.physicalScience.granted
258
- op: add
259
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
260
- - id: piracy
261
- effects:
262
- - target: skills.trained
263
- op: grant
264
- value: { tag: skill.lore.piracy }
265
- when: "!('skill.lore.piracy' in skills.chosen)"
266
- - { target: skills.trainings, op: add, value: 1 }
267
- - target: skills.lore.piracy.granted
268
- op: add
269
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
270
- - id: plant
271
- effects:
272
- - target: skills.trained
273
- op: grant
274
- value: { tag: skill.lore.plant }
275
- when: "!('skill.lore.plant' in skills.chosen)"
276
- - { target: skills.trainings, op: add, value: 1 }
277
- - target: skills.lore.plant.granted
278
- op: add
279
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
280
- - id: prismeni
281
- effects:
282
- - target: skills.trained
283
- op: grant
284
- value: { tag: skill.lore.prismeni }
285
- when: "!('skill.lore.prismeni' in skills.chosen)"
286
- - { target: skills.trainings, op: add, value: 1 }
287
- - target: skills.lore.prismeni.granted
288
- op: add
289
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
290
- - id: shirren
291
- effects:
292
- - target: skills.trained
293
- op: grant
294
- value: { tag: skill.lore.shirren }
295
- when: "!('skill.lore.shirren' in skills.chosen)"
296
- - { target: skills.trainings, op: add, value: 1 }
297
- - target: skills.lore.shirren.granted
298
- op: add
299
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
300
- - id: skittermander
301
- effects:
302
- - target: skills.trained
303
- op: grant
304
- value: { tag: skill.lore.skittermander }
305
- when: "!('skill.lore.skittermander' in skills.chosen)"
306
- - { target: skills.trainings, op: add, value: 1 }
307
- - target: skills.lore.skittermander.granted
308
- op: add
309
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
310
- - id: sports
311
- effects:
312
- - target: skills.trained
313
- op: grant
314
- value: { tag: skill.lore.sports }
315
- when: "!('skill.lore.sports' in skills.chosen)"
316
- - { target: skills.trainings, op: add, value: 1 }
317
- - target: skills.lore.sports.granted
318
- op: add
319
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
320
- - id: underworld
321
- effects:
322
- - target: skills.trained
323
- op: grant
324
- value: { tag: skill.lore.underworld }
325
- when: "!('skill.lore.underworld' in skills.chosen)"
326
- - { target: skills.trainings, op: add, value: 1 }
327
- - target: skills.lore.underworld.granted
328
- op: add
329
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
330
- - id: vesk
331
- effects:
332
- - target: skills.trained
333
- op: grant
334
- value: { tag: skill.lore.vesk }
335
- when: "!('skill.lore.vesk' in skills.chosen)"
336
- - { target: skills.trainings, op: add, value: 1 }
337
- - target: skills.lore.vesk.granted
338
- op: add
339
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
340
- - id: vidgame
341
- effects:
342
- - target: skills.trained
343
- op: grant
344
- value: { tag: skill.lore.vidgame }
345
- when: "!('skill.lore.vidgame' in skills.chosen)"
346
- - { target: skills.trainings, op: add, value: 1 }
347
- - target: skills.lore.vidgame.granted
348
- op: add
349
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
350
- - id: warfare
351
- effects:
352
- - target: skills.trained
353
- op: grant
354
- value: { tag: skill.lore.warfare }
355
- when: "!('skill.lore.warfare' in skills.chosen)"
356
- - { target: skills.trainings, op: add, value: 1 }
357
- - target: skills.lore.warfare.granted
358
- op: add
359
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
360
- - id: ysoki
361
- effects:
362
- - target: skills.trained
363
- op: grant
364
- value: { tag: skill.lore.ysoki }
365
- when: "!('skill.lore.ysoki' in skills.chosen)"
366
- - { target: skills.trainings, op: add, value: 1 }
367
- - target: skills.lore.ysoki.granted
368
- op: add
369
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
370
- - id: custom1
371
- effects:
372
- - target: skills.trained
373
- op: grant
374
- value: { tag: skill.lore.custom1 }
375
- when: "!('skill.lore.custom1' in skills.chosen)"
376
- - { target: skills.trainings, op: add, value: 1 }
377
- - target: skills.lore.custom1.granted
378
- op: add
379
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
380
- - id: custom2
381
- effects:
382
- - target: skills.trained
383
- op: grant
384
- value: { tag: skill.lore.custom2 }
385
- when: "!('skill.lore.custom2' in skills.chosen)"
386
- - { target: skills.trainings, op: add, value: 1 }
387
- - target: skills.lore.custom2.granted
388
- op: add
389
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
390
- - id: custom3
391
- effects:
392
- - target: skills.trained
393
- op: grant
394
- value: { tag: skill.lore.custom3 }
395
- when: "!('skill.lore.custom3' in skills.chosen)"
396
- - { target: skills.trainings, op: add, value: 1 }
397
- - target: skills.lore.custom3.granted
398
- op: add
399
- value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
9
+ values:
10
+ [
11
+ academia,
12
+ alcohol,
13
+ android,
14
+ animal,
15
+ art,
16
+ augmentation,
17
+ barathu,
18
+ borai,
19
+ business,
20
+ cooking,
21
+ corporate,
22
+ games,
23
+ genealogy,
24
+ history,
25
+ hyperspace,
26
+ infosphere,
27
+ kasatha,
28
+ labor,
29
+ lashunta,
30
+ legal,
31
+ life-science,
32
+ media,
33
+ mining,
34
+ pahtra,
35
+ physical-science,
36
+ piracy,
37
+ plant,
38
+ prismeni,
39
+ shirren,
40
+ skittermander,
41
+ sports,
42
+ underworld,
43
+ vesk,
44
+ vidgame,
45
+ warfare,
46
+ ysoki,
47
+ custom1,
48
+ custom2,
49
+ custom3,
50
+ ]
51
+ effects:
52
+ - target: skills.trained
53
+ op: grant
54
+ value: { formula: "'skill.lore.' + pick.value" }
55
+ when: "!(('skill.lore.' + pick.value) in skills.chosen)"
56
+ - { target: skills.trainings, op: add, value: 1 }
57
+ - target:
58
+ formula: >-
59
+ 'skills.lore.' + (pick.value == 'life-science' ? 'lifeScience'
60
+ : pick.value == 'physical-science' ? 'physicalScience' : pick.value) + '.granted'
61
+ op: add
62
+ value: '(level >= 3 ? 1 : 0) + (level >= 7 ? 1 : 0) + (level >= 15 ? 1 : 0)'
@@ -8,63 +8,9 @@ choices:
8
8
  - id: skill
9
9
  from:
10
10
  values:
11
- - skill.acrobatics
12
- - skill.arcana
13
- - skill.athletics
14
- - skill.computers
15
- - skill.crafting
16
- - skill.deception
17
- - skill.diplomacy
18
- - skill.intimidation
19
- - skill.medicine
20
- - skill.nature
21
- - skill.occultism
22
- - skill.performance
23
- - skill.piloting
24
- - skill.religion
25
- - skill.society
26
- - skill.stealth
27
- - skill.survival
28
- - skill.thievery
29
- - skill.lore.academia
30
- - skill.lore.alcohol
31
- - skill.lore.android
32
- - skill.lore.animal
33
- - skill.lore.art
34
- - skill.lore.augmentation
35
- - skill.lore.barathu
36
- - skill.lore.borai
37
- - skill.lore.business
38
- - skill.lore.cooking
39
- - skill.lore.corporate
40
- - skill.lore.games
41
- - skill.lore.genealogy
42
- - skill.lore.history
43
- - skill.lore.hyperspace
44
- - skill.lore.infosphere
45
- - skill.lore.kasatha
46
- - skill.lore.labor
47
- - skill.lore.lashunta
48
- - skill.lore.legal
49
- - skill.lore.life-science
50
- - skill.lore.media
51
- - skill.lore.mining
52
- - skill.lore.pahtra
53
- - skill.lore.physical-science
54
- - skill.lore.piracy
55
- - skill.lore.plant
56
- - skill.lore.prismeni
57
- - skill.lore.shirren
58
- - skill.lore.skittermander
59
- - skill.lore.sports
60
- - skill.lore.underworld
61
- - skill.lore.vesk
62
- - skill.lore.vidgame
63
- - skill.lore.warfare
64
- - skill.lore.ysoki
65
- - skill.lore.custom1
66
- - skill.lore.custom2
67
- - skill.lore.custom3
11
+ {
12
+ formula: "skills.offered + skills.lores + ['skill.lore.custom1', 'skill.lore.custom2', 'skill.lore.custom3']",
13
+ }
68
14
  effects:
69
15
  - { target: assurance.skills, op: grant, value: { formula: pick.value } }
70
16
 
@@ -10,63 +10,7 @@ choices:
10
10
  - id: skill
11
11
  unique: skill-training
12
12
  from:
13
- values:
14
- [
15
- skill.acrobatics,
16
- skill.arcana,
17
- skill.athletics,
18
- skill.computers,
19
- skill.crafting,
20
- skill.deception,
21
- skill.diplomacy,
22
- skill.intimidation,
23
- skill.medicine,
24
- skill.nature,
25
- skill.occultism,
26
- skill.performance,
27
- skill.piloting,
28
- skill.religion,
29
- skill.society,
30
- skill.stealth,
31
- skill.survival,
32
- skill.thievery,
33
- skill.lore.academia,
34
- skill.lore.circus,
35
- skill.lore.farming,
36
- skill.lore.legal,
37
- skill.lore.scribing,
38
- skill.lore.underworld,
39
- skill.lore.warfare,
40
- skill.lore.alcohol,
41
- skill.lore.art,
42
- skill.lore.cooking,
43
- skill.lore.engineering,
44
- skill.lore.fortune-telling,
45
- skill.lore.games,
46
- skill.lore.genealogy,
47
- skill.lore.gladiatorial,
48
- skill.lore.guild,
49
- skill.lore.heraldry,
50
- skill.lore.herbalism,
51
- skill.lore.labor,
52
- skill.lore.mercantile,
53
- skill.lore.mining,
54
- skill.lore.sailing,
55
- skill.lore.tanning,
56
- skill.lore.theater,
57
- skill.lore.cave,
58
- skill.lore.desert,
59
- skill.lore.forest,
60
- skill.lore.mountain,
61
- skill.lore.plains,
62
- skill.lore.swamp,
63
- skill.lore.dwarf,
64
- skill.lore.elf,
65
- skill.lore.goblin,
66
- skill.lore.halfling,
67
- skill.lore.leshy,
68
- skill.lore.orc,
69
- ]
13
+ values: { formula: skills.offered + skills.lores }
70
14
  where: '!(value in skills.trained) && !(value in skills.chosen) || value in choice.picks'
71
15
  effects:
72
16
  - { target: skills.chosen, op: grant, value: { formula: pick.value } }
@@ -1,6 +1,6 @@
1
1
  id: features.envoy.style.from-the-front
2
2
  type: feature
3
- fields: { level: 1 }
3
+ fields: { level: 1, classOption: envoy.leadership-style }
4
4
  effects:
5
5
  - target: skills.trained
6
6
  op: grant
@@ -1,6 +1,6 @@
1
1
  id: features.envoy.style.from-the-shadows
2
2
  type: feature
3
- fields: { level: 1 }
3
+ fields: { level: 1, classOption: envoy.leadership-style }
4
4
  effects:
5
5
  - target: skills.trained
6
6
  op: grant
@@ -1,6 +1,6 @@
1
1
  id: features.envoy.style.guns-blazing
2
2
  type: feature
3
- fields: { level: 1 }
3
+ fields: { level: 1, classOption: envoy.leadership-style }
4
4
  effects:
5
5
  - target: skills.trained
6
6
  op: grant
@@ -1,6 +1,6 @@
1
1
  id: features.envoy.style.in-the-spotlight
2
2
  type: feature
3
- fields: { level: 1 }
3
+ fields: { level: 1, classOption: envoy.leadership-style }
4
4
  effects:
5
5
  - target: skills.trained
6
6
  op: grant
@@ -1,6 +1,6 @@
1
1
  id: features.envoy.style.infosphere-director
2
2
  type: feature
3
- fields: { level: 1 }
3
+ fields: { level: 1, classOption: envoy.leadership-style }
4
4
  effects:
5
5
  - target: skills.trained
6
6
  op: grant
@@ -1,6 +1,6 @@
1
1
  id: features.envoy.style.through-desperate-times
2
2
  type: feature
3
- fields: { level: 1 }
3
+ fields: { level: 1, classOption: envoy.leadership-style }
4
4
  effects:
5
5
  - target: skills.trained
6
6
  op: grant
@@ -1,6 +1,6 @@
1
1
  id: features.soldier.style.action-hero
2
2
  type: feature
3
- fields: { level: 1 }
3
+ fields: { level: 1, classOption: soldier.fighting-style }
4
4
  effects:
5
5
  - target: { steps: [strike.hit] }
6
6
  op: changes
@@ -1,6 +1,6 @@
1
1
  id: features.soldier.style.armor-storm
2
2
  type: feature
3
- fields: { level: 1 }
3
+ fields: { level: 1, classOption: soldier.fighting-style }
4
4
  effects:
5
5
  - { target: soldier.armorStorm, op: set, value: true }
6
6
  - target: { incoming: { fields: [hp.current], tags: [damage] } }
@@ -1,4 +1,4 @@
1
1
  id: features.soldier.style.bombard
2
2
  type: feature
3
- fields: { level: 1 }
3
+ fields: { level: 1, classOption: soldier.fighting-style }
4
4
  effects: [{ target: soldier.bombard, op: set, value: true }]
@@ -1,4 +1,4 @@
1
1
  id: features.soldier.style.close-quarters
2
2
  type: feature
3
- fields: { level: 1 }
3
+ fields: { level: 1, classOption: soldier.fighting-style }
4
4
  grants: [{ item: feats.soldier.whirling-swipe, waivePrerequisites: true }]
@@ -1,6 +1,6 @@
1
1
  id: features.soldier.style.erudite-warrior
2
2
  type: feature
3
- fields: { level: 1 }
3
+ fields: { level: 1, classOption: soldier.fighting-style }
4
4
  choices:
5
5
  - id: skill
6
6
  from: { values: [skill.diplomacy, skill.society] }