1crate::ix!();
3
4#[derive(Copy,EnumIter,Debug, Clone, PartialEq, Eq, Hash)]
5pub enum WarriorResilienceCapability {
6 CapableOfEnduringHardships,
8
9 DeterminedToOvercomeChallenges,
11
12 GentleYetUnstoppableStrength,
14
15 AbsorbsAndTransformsDecay,
17
18 PatientlyEnduresAndOvercomesObstacles,
20
21 PatientlyManagesComplexProcesses,
23
24 PatientlyPreparedForUnseenThreats,
26
27 ResilientInFaceOfAdversity,
29
30 ResilientInFaceOfSetbacks,
32
33 AdaptedToHarshConditions,
35
36 SteadfastUnderPressure,
38
39 SteadfastDefenderOfCommunityValues,
41
42 CalmlyPreparedForExtremeChallenges,
44
45 CalmlyPreparedForSpiritualDefense,
47
48 TenaciousThroughLongTermStruggles,
50
51 ResilientInAmbiguousSituations,
53
54 ResilientThroughResourceManagement,
56}
57
58#[allow(clippy::too_many_lines)]
59impl WarriorResilienceCapability {
60 pub fn intrinsic_dimension_ratings(&self) -> WarriorCapabilityIntrinsicDimensionRatings {
66 trace!(target: "warrior.resilience", ?self, "computing intrinsic ratings");
67 use WarriorResilienceCapability::*;
68 match self {
69 CapableOfEnduringHardships => wc_ratings!(
73 0.40,0.40,0.40,0.40,0.40,0.90,0.40,0.40,0.40,0.40,
74 0.40,0.40,0.90,0.40,0.40,0.40,0.40,0.40,0.40,0.40,
75 0.40,0.40,0.40,0.40,0.40,0.40,0.40,0.40,0.70,0.40,
76 0.40,0.40,0.40,0.40,0.40,0.40,0.40,0.40,0.40,0.40,
77 0.40,0.70,0.40,0.40,0.40,0.40,0.40,0.40,0.40,0.40,
78 0.85,0.80,0.75,0.40,0.40,0.40,0.80,0.40,0.40,0.40,
79 0.40,0.40,0.40,0.40,0.40,0.40,0.40,0.40,0.40,0.40,
80 0.40,0.40,0.40,0.40,0.40,0.40,0.40,0.40,0.40,0.40,
81 0.40,0.40,0.40,0.40,0.40,0.40,0.40,0.40,0.40,0.40,
82 0.40,0.40,0.40,0.40,0.40,0.40,0.40,0.40,0.40,0.40,
83 0.75,0.40,0.40,0.40,0.40,0.40,0.40,0.40,0.40,0.40,
84 0.40,0.40,0.40,0.40,0.85
85 ),
86
87 DeterminedToOvercomeChallenges => wc_ratings!(
91 0.40,0.40,0.40,0.45,0.50,0.85,0.40,0.40,0.40,0.60,
92 0.45,0.45,0.85,0.45,0.45,0.45,0.45,0.45,0.45,0.40,
93 0.45,0.55,0.45,0.45,0.40,0.40,0.40,0.45,0.65,0.45,
94 0.45,0.45,0.40,0.40,0.40,0.55,0.45,0.45,0.45,0.50,
95 0.55,0.65,0.55,0.40,0.45,0.45,0.55,0.50,0.45,0.45,
96 0.80,0.80,0.70,0.50,0.65,0.40,0.75,0.45,0.55,0.45,
97 0.55,0.45,0.45,0.45,0.45,0.45,0.45,0.45,0.45,0.45,
98 0.45,0.45,0.45,0.45,0.45,0.45,0.45,0.45,0.50,0.45,
99 0.45,0.45,0.45,0.45,0.45,0.45,0.45,0.45,0.45,0.45,
100 0.50,0.55,0.45,0.50,0.45,0.45,0.45,0.45,0.45,0.45,
101 0.80,0.45,0.45,0.45,0.45,0.45,0.80,0.50,0.45,0.45,
102 0.45,0.45,0.45,0.45,0.80
103 ),
104
105 GentleYetUnstoppableStrength => wc_ratings!(
109 0.50,0.45,0.50,0.50,0.60,0.75,0.40,0.40,0.80,0.40,
110 0.45,0.60,0.80,0.35,0.60,0.50,0.50,0.50,0.60,0.45,
111 0.25,0.45,0.45,0.45,0.45,0.30,0.40,0.45,0.60,0.35,
112 0.45,0.50,0.40,0.45,0.40,0.55,0.50,0.45,0.45,0.50,
113 0.60,0.70,0.60,0.45,0.45,0.45,0.55,0.50,0.45,0.45,
114 0.75,0.75,0.70,0.55,0.65,0.40,0.90,0.50,0.60,0.50,
115 0.50,0.45,0.45,0.45,0.45,0.45,0.45,0.45,0.45,0.45,
116 0.50,0.50,0.45,0.50,0.45,0.45,0.45,0.45,0.55,0.50,
117 0.45,0.45,0.45,0.50,0.45,0.50,0.50,0.45,0.45,0.45,
118 0.55,0.60,0.50,0.55,0.50,0.50,0.55,0.50,0.60,0.55,
119 0.85,0.60,0.45,0.80,0.50,0.45,0.75,0.55,0.45,0.50,
120 0.45,0.45,0.45,0.45,0.75
121 ),
122
123 AbsorbsAndTransformsDecay => wc_ratings!(
127 0.45,0.40,0.45,0.45,0.45,0.80,0.50,0.40,0.45,0.45,
128 0.45,0.45,0.80,0.40,0.45,0.45,0.45,0.45,0.45,0.40,
129 0.40,0.50,0.45,0.45,0.45,0.35,0.40,0.50,0.80,0.45,
130 0.45,0.45,0.60,0.45,0.55,0.60,0.50,0.45,0.45,0.45,
131 0.50,0.60,0.55,0.45,0.45,0.45,0.55,0.50,0.45,0.45,
132 0.80,0.90,0.70,0.55,0.65,0.40,0.75,0.55,0.55,0.50,
133 0.50,0.45,0.45,0.45,0.45,0.45,0.45,0.45,0.55,0.50,
134 0.50,0.50,0.45,0.50,0.45,0.45,0.45,0.45,0.60,0.55,
135 0.45,0.45,0.45,0.55,0.45,0.50,0.55,0.45,0.45,0.45,
136 0.55,0.60,0.50,0.55,0.50,0.50,0.55,0.50,0.60,0.55,
137 0.75,0.50,0.55,0.60,0.50,0.45,0.60,0.55,0.45,0.50,
138 0.45,0.45,0.55,0.55,0.70
139 ),
140
141 PatientlyEnduresAndOvercomesObstacles => wc_ratings!(
145 0.40,0.40,0.40,0.45,0.45,0.80,0.40,0.40,0.45,0.40,
146 0.45,0.45,0.85,0.40,0.45,0.45,0.45,0.45,0.45,0.40,
147 0.40,0.50,0.45,0.45,0.45,0.35,0.40,0.45,0.70,0.40,
148 0.45,0.45,0.40,0.40,0.40,0.55,0.45,0.45,0.45,0.45,
149 0.45,0.55,0.80,0.45,0.45,0.45,0.55,0.50,0.45,0.45,
150 0.80,0.85,0.90,0.60,0.80,0.40,0.80,0.55,0.60,0.50,
151 0.50,0.45,0.45,0.45,0.45,0.45,0.45,0.45,0.45,0.45,
152 0.45,0.45,0.45,0.50,0.45,0.45,0.45,0.45,0.50,0.45,
153 0.45,0.45,0.45,0.50,0.45,0.50,0.55,0.45,0.45,0.45,
154 0.55,0.65,0.50,0.60,0.50,0.50,0.55,0.50,0.60,0.55,
155 0.85,0.50,0.50,0.55,0.50,0.45,0.70,0.50,0.45,0.50,
156 0.45,0.45,0.50,0.55,0.80
157 ),
158
159 PatientlyManagesComplexProcesses => wc_ratings!(
163 0.40,0.40,0.50,0.45,0.45,0.75,0.40,0.45,0.45,0.40,
164 0.45,0.45,0.80,0.45,0.45,0.45,0.60,0.55,0.50,0.40,
165 0.40,0.50,0.50,0.50,0.50,0.35,0.40,0.45,0.60,0.40,
166 0.45,0.45,0.40,0.40,0.40,0.55,0.45,0.45,0.45,0.45,
167 0.45,0.55,0.70,0.45,0.45,0.45,0.55,0.50,0.45,0.45,
168 0.75,0.75,0.80,0.55,0.80,0.40,0.75,0.45,0.70,0.60,
169 0.55,0.45,0.45,0.45,0.45,0.45,0.45,0.45,0.45,0.45,
170 0.50,0.50,0.45,0.50,0.45,0.45,0.45,0.45,0.50,0.45,
171 0.50,0.55,0.45,0.55,0.50,0.55,0.60,0.45,0.45,0.45,
172 0.55,0.60,0.50,0.55,0.50,0.50,0.55,0.50,0.60,0.55,
173 0.70,0.50,0.55,0.55,0.50,0.50,0.75,0.55,0.50,0.55,
174 0.50,0.50,0.55,0.55,0.75
175 ),
176
177 PatientlyPreparedForUnseenThreats => wc_ratings!(
181 0.40,0.45,0.45,0.50,0.45,0.75,0.40,0.40,0.45,0.40,
182 0.45,0.45,0.75,0.45,0.45,0.45,0.50,0.50,0.45,0.40,
183 0.40,0.55,0.50,0.55,0.50,0.35,0.40,0.55,0.70,0.40,
184 0.45,0.45,0.40,0.40,0.40,0.60,0.85,0.45,0.45,0.45,
185 0.50,0.60,0.60,0.45,0.45,0.45,0.55,0.50,0.45,0.45,
186 0.80,0.75,0.80,0.60,0.70,0.40,0.75,0.60,0.60,0.60,
187 0.65,0.55,0.55,0.60,0.60,0.50,0.45,0.50,0.45,0.45,
188 0.60,0.60,0.45,0.60,0.50,0.45,0.45,0.45,0.65,0.60,
189 0.45,0.45,0.45,0.55,0.45,0.55,0.60,0.55,0.45,0.45,
190 0.60,0.65,0.55,0.60,0.55,0.55,0.60,0.55,0.70,0.65,
191 0.75,0.55,0.55,0.55,0.55,0.55,0.70,0.60,0.55,0.60,
192 0.55,0.55,0.60,0.60,0.80
193 ),
194
195 ResilientInFaceOfAdversity => wc_ratings!(
199 0.40,0.45,0.45,0.45,0.50,0.90,0.40,0.40,0.45,0.55,
200 0.50,0.50,0.85,0.45,0.50,0.45,0.55,0.50,0.50,0.40,
201 0.40,0.55,0.50,0.50,0.50,0.40,0.40,0.50,0.70,0.45,
202 0.45,0.45,0.40,0.40,0.40,0.55,0.50,0.45,0.45,0.50,
203 0.60,0.70,0.60,0.45,0.45,0.45,0.55,0.50,0.45,0.45,
204 0.85,0.80,0.70,0.55,0.70,0.45,0.80,0.60,0.60,0.55,
205 0.55,0.50,0.50,0.55,0.55,0.50,0.45,0.45,0.45,0.45,
206 0.55,0.55,0.45,0.55,0.50,0.45,0.45,0.45,0.60,0.55,
207 0.45,0.50,0.45,0.55,0.50,0.50,0.55,0.50,0.45,0.45,
208 0.65,0.70,0.60,0.65,0.60,0.60,0.65,0.60,0.70,0.65,
209 0.85,0.60,0.55,0.60,0.55,0.50,0.80,0.60,0.55,0.60,
210 0.55,0.55,0.60,0.60,0.85
211 ),
212
213 ResilientInFaceOfSetbacks => wc_ratings!(
217 0.40,0.40,0.45,0.45,0.50,0.85,0.40,0.40,0.45,0.60,
218 0.45,0.45,0.80,0.45,0.45,0.45,0.50,0.50,0.45,0.40,
219 0.40,0.55,0.45,0.50,0.50,0.40,0.40,0.50,0.70,0.45,
220 0.45,0.45,0.40,0.40,0.40,0.55,0.50,0.45,0.45,0.50,
221 0.60,0.70,0.60,0.45,0.45,0.45,0.55,0.50,0.45,0.45,
222 0.80,0.80,0.80,0.55,0.75,0.40,0.80,0.50,0.55,0.50,
223 0.50,0.45,0.45,0.50,0.50,0.45,0.45,0.45,0.45,0.45,
224 0.50,0.50,0.45,0.50,0.45,0.45,0.45,0.45,0.55,0.50,
225 0.45,0.45,0.45,0.50,0.45,0.50,0.55,0.45,0.45,0.45,
226 0.60,0.65,0.55,0.60,0.55,0.55,0.60,0.55,0.65,0.60,
227 0.80,0.55,0.50,0.55,0.50,0.50,0.75,0.55,0.50,0.55,
228 0.50,0.50,0.55,0.55,0.80
229 ),
230
231 AdaptedToHarshConditions => wc_ratings!(
235 0.45,0.40,0.45,0.45,0.70,0.80,0.40,0.40,0.45,0.45,
236 0.45,0.45,0.75,0.45,0.45,0.45,0.45,0.45,0.45,0.40,
237 0.40,0.50,0.45,0.45,0.50,0.35,0.40,0.45,0.80,0.45,
238 0.80,0.45,0.60,0.45,0.55,0.60,0.50,0.45,0.45,0.55,
239 0.70,0.90,0.90,0.45,0.45,0.45,0.55,0.50,0.45,0.45,
240 0.75,0.80,0.70,0.55,0.60,0.40,0.80,0.50,0.55,0.50,
241 0.50,0.45,0.45,0.45,0.45,0.45,0.45,0.45,0.60,0.55,
242 0.55,0.55,0.45,0.55,0.50,0.45,0.45,0.45,0.70,0.55,
243 0.50,0.50,0.45,0.60,0.50,0.55,0.60,0.50,0.45,0.45,
244 0.65,0.70,0.60,0.65,0.60,0.60,0.65,0.60,0.75,0.70,
245 0.75,0.55,0.55,0.60,0.55,0.50,0.70,0.60,0.50,0.55,
246 0.50,0.50,0.60,0.60,0.80
247 ),
248
249 SteadfastUnderPressure => wc_ratings!(
253 0.40,0.45,0.45,0.45,0.50,0.80,0.40,0.40,0.45,0.50,
254 0.50,0.50,0.80,0.45,0.50,0.45,0.50,0.50,0.45,0.40,
255 0.40,0.55,0.50,0.50,0.50,0.40,0.40,0.50,0.70,0.45,
256 0.45,0.45,0.40,0.40,0.40,0.55,0.50,0.45,0.45,0.55,
257 0.65,0.80,0.70,0.45,0.45,0.45,0.55,0.50,0.45,0.45,
258 0.85,0.85,0.75,0.55,0.70,0.40,0.90,0.60,0.65,0.50,
259 0.55,0.50,0.50,0.55,0.55,0.50,0.45,0.45,0.45,0.45,
260 0.55,0.55,0.45,0.55,0.50,0.45,0.45,0.45,0.60,0.55,
261 0.45,0.55,0.45,0.60,0.50,0.55,0.60,0.55,0.45,0.45,
262 0.70,0.75,0.65,0.70,0.65,0.65,0.70,0.65,0.75,0.70,
263 0.85,0.60,0.55,0.60,0.55,0.50,0.90,0.60,0.55,0.60,
264 0.55,0.55,0.60,0.60,0.90
265 ),
266
267 SteadfastDefenderOfCommunityValues => wc_ratings!(
271 0.45,0.45,0.45,0.50,0.50,0.75,0.40,0.40,0.85,0.45,
272 0.50,0.60,0.80,0.45,0.55,0.60,0.50,0.60,0.55,0.45,
273 0.40,0.55,0.55,0.50,0.50,0.30,0.45,0.50,0.65,0.45,
274 0.80,0.90,0.60,0.70,0.45,0.75,0.55,0.50,0.50,0.55,
275 0.65,0.75,0.60,0.45,0.45,0.45,0.60,0.55,0.50,0.50,
276 0.75,0.80,0.70,0.55,0.65,0.45,0.85,0.65,0.60,0.55,
277 0.55,0.50,0.50,0.55,0.55,0.50,0.45,0.45,0.45,0.45,
278 0.55,0.60,0.45,0.55,0.55,0.45,0.45,0.45,0.60,0.55,
279 0.50,0.50,0.45,0.55,0.55,0.55,0.60,0.55,0.50,0.50,
280 0.70,0.75,0.60,0.65,0.65,0.60,0.70,0.65,0.75,0.70,
281 0.80,0.85,0.55,0.65,0.50,0.60,0.85,0.70,0.55,0.60,
282 0.55,0.60,0.60,0.60,0.70
283 ),
284
285 CalmlyPreparedForExtremeChallenges => wc_ratings!(
289 0.40,0.40,0.45,0.45,0.60,0.80,0.40,0.40,0.45,0.45,
290 0.45,0.45,0.75,0.40,0.45,0.45,0.45,0.45,0.45,0.40,
291 0.40,0.50,0.45,0.45,0.45,0.35,0.40,0.45,0.70,0.40,
292 0.45,0.45,0.40,0.40,0.40,0.55,0.45,0.45,0.45,0.55,
293 0.65,0.80,0.85,0.45,0.45,0.45,0.55,0.50,0.45,0.45,
294 0.80,0.80,0.80,0.60,0.80,0.40,0.80,0.50,0.55,0.50,
295 0.50,0.45,0.45,0.45,0.45,0.45,0.45,0.45,0.45,0.45,
296 0.50,0.50,0.45,0.50,0.45,0.45,0.45,0.45,0.55,0.50,
297 0.45,0.50,0.45,0.60,0.50,0.55,0.60,0.55,0.45,0.45,
298 0.60,0.65,0.60,0.65,0.60,0.60,0.65,0.60,0.70,0.65,
299 0.80,0.55,0.50,0.55,0.50,0.50,0.85,0.60,0.50,0.55,
300 0.50,0.50,0.60,0.60,0.90
301 ),
302
303 CalmlyPreparedForSpiritualDefense => wc_ratings!(
307 0.40,0.40,0.45,0.45,0.50,0.80,0.80,0.40,0.50,0.45,
308 0.45,0.45,0.75,0.40,0.45,0.45,0.45,0.45,0.45,0.40,
309 0.40,0.50,0.45,0.45,0.45,0.35,0.40,0.45,0.70,0.40,
310 0.45,0.45,0.40,0.40,0.75,0.55,0.50,0.45,0.45,0.55,
311 0.65,0.80,0.70,0.45,0.45,0.45,0.55,0.50,0.45,0.45,
312 0.80,0.80,0.80,0.60,0.80,0.90,0.80,0.90,0.55,0.50,
313 0.50,0.45,0.50,0.60,0.55,0.55,0.50,0.50,0.50,0.45,
314 0.50,0.55,0.45,0.55,0.50,0.45,0.55,0.45,0.55,0.50,
315 0.45,0.45,0.45,0.55,0.45,0.50,0.55,0.50,0.50,0.45,
316 0.60,0.65,0.60,0.60,0.60,0.60,0.65,0.60,0.70,0.60,
317 0.80,0.55,0.55,0.60,0.55,0.55,0.90,0.65,0.55,0.60,
318 0.50,0.55,0.60,0.60,0.85
319 ),
320
321 TenaciousThroughLongTermStruggles => wc_ratings!(
325 0.40,0.45,0.45,0.45,0.50,0.85,0.40,0.40,0.45,0.50,
326 0.50,0.50,0.85,0.45,0.50,0.50,0.55,0.50,0.50,0.40,
327 0.40,0.55,0.50,0.50,0.50,0.40,0.40,0.50,0.75,0.45,
328 0.45,0.45,0.40,0.40,0.40,0.60,0.50,0.45,0.45,0.55,
329 0.65,0.80,0.70,0.45,0.45,0.45,0.55,0.50,0.45,0.45,
330 0.85,0.80,0.85,0.60,0.85,0.40,0.90,0.70,0.70,0.60,
331 0.60,0.50,0.50,0.55,0.55,0.50,0.45,0.45,0.45,0.45,
332 0.55,0.55,0.45,0.55,0.50,0.45,0.45,0.45,0.60,0.55,
333 0.45,0.55,0.45,0.60,0.50,0.60,0.65,0.55,0.45,0.45,
334 0.70,0.75,0.70,0.70,0.70,0.70,0.75,0.70,0.80,0.75,
335 0.90,0.60,0.55,0.60,0.55,0.55,0.90,0.70,0.60,0.65,
336 0.55,0.55,0.65,0.65,0.85
337 ),
338
339 ResilientInAmbiguousSituations => wc_ratings!(
343 0.40,0.45,0.50,0.45,0.50,0.80,0.40,0.40,0.45,0.50,
344 0.50,0.50,0.80,0.45,0.50,0.50,0.55,0.50,0.50,0.40,
345 0.40,0.55,0.50,0.50,0.50,0.40,0.40,0.55,0.85,0.45,
346 0.45,0.45,0.40,0.40,0.40,0.60,0.55,0.45,0.50,0.55,
347 0.65,0.80,0.70,0.45,0.45,0.45,0.55,0.50,0.45,0.45,
348 0.80,0.80,0.75,0.60,0.80,0.45,0.80,0.50,0.85,0.70,
349 0.70,0.60,0.60,0.80,0.80,0.60,0.45,0.60,0.50,0.50,
350 0.60,0.65,0.50,0.60,0.55,0.50,0.55,0.55,0.70,0.65,
351 0.50,0.55,0.50,0.65,0.55,0.60,0.65,0.60,0.50,0.50,
352 0.75,0.80,0.70,0.75,0.75,0.70,0.80,0.75,0.80,0.75,
353 0.80,0.60,0.55,0.65,0.55,0.60,0.85,0.70,0.60,0.65,
354 0.55,0.60,0.70,0.70,0.85
355 ),
356
357 ResilientThroughResourceManagement => wc_ratings!(
361 0.40,0.45,0.45,0.45,0.50,0.80,0.40,0.40,0.45,0.55,
362 0.50,0.50,0.80,0.45,0.50,0.50,0.55,0.50,0.50,0.40,
363 0.40,0.55,0.50,0.50,0.90,0.40,0.40,0.50,0.70,0.45,
364 0.45,0.45,0.40,0.40,0.40,0.60,0.50,0.45,0.45,0.50,
365 0.60,0.70,0.60,0.45,0.45,0.45,0.55,0.50,0.45,0.45,
366 0.80,0.80,0.75,0.55,0.75,0.40,0.85,0.65,0.60,0.55,
367 0.55,0.50,0.50,0.55,0.55,0.50,0.45,0.45,0.45,0.45,
368 0.55,0.55,0.45,0.55,0.50,0.45,0.45,0.45,0.60,0.55,
369 0.50,0.55,0.45,0.60,0.55,0.60,0.65,0.60,0.50,0.55,
370 0.70,0.75,0.60,0.65,0.65,0.60,0.70,0.65,0.75,0.70,
371 0.80,0.60,0.55,0.60,0.55,0.55,0.80,0.70,0.55,0.60,
372 0.55,0.55,0.60,0.60,0.80
373 ),
374 }
375 }
376}