@genocode/core 0.4.0 → 0.5.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 (56) hide show
  1. package/dist/ast.d.ts +2 -0
  2. package/dist/ast.d.ts.map +1 -1
  3. package/dist/ast.js.map +1 -1
  4. package/dist/builtins.d.ts +1 -1
  5. package/dist/builtins.d.ts.map +1 -1
  6. package/dist/builtins.js +5 -2
  7. package/dist/builtins.js.map +1 -1
  8. package/dist/checker.js +2 -2
  9. package/dist/checker.js.map +1 -1
  10. package/dist/colour.d.ts +1 -1
  11. package/dist/colour.d.ts.map +1 -1
  12. package/dist/colour.js +8 -4
  13. package/dist/colour.js.map +1 -1
  14. package/dist/format.js +1 -1
  15. package/dist/format.js.map +1 -1
  16. package/dist/genetics.d.ts.map +1 -1
  17. package/dist/genetics.js +3 -1
  18. package/dist/genetics.js.map +1 -1
  19. package/dist/help.d.ts.map +1 -1
  20. package/dist/help.js +4 -0
  21. package/dist/help.js.map +1 -1
  22. package/dist/interpreter.js +1 -1
  23. package/dist/interpreter.js.map +1 -1
  24. package/dist/parser.js +7 -2
  25. package/dist/parser.js.map +1 -1
  26. package/dist/values.d.ts +2 -0
  27. package/dist/values.d.ts.map +1 -1
  28. package/dist/values.js +1 -1
  29. package/dist/values.js.map +1 -1
  30. package/package.json +1 -1
  31. package/reference/LANGUAGE.md +14 -4
  32. package/reference/creatures/Alien.genie +653 -0
  33. package/reference/creatures/Breeze.genie +386 -0
  34. package/reference/creatures/Cobra.genie +386 -0
  35. package/reference/creatures/Flowerball.genie +302 -39
  36. package/reference/creatures/FlyingFish.genie +786 -0
  37. package/reference/creatures/Genes.genie +470 -0
  38. package/reference/creatures/Genie.genie +548 -0
  39. package/reference/creatures/Greenbay.genie +786 -0
  40. package/reference/creatures/Jellyfish.genie +472 -0
  41. package/reference/creatures/Monster.genie +594 -0
  42. package/reference/creatures/Neuron.genie +649 -0
  43. package/reference/creatures/Octoplant.genie +334 -0
  44. package/reference/creatures/Parasite.genie +393 -0
  45. package/reference/creatures/Pesky.genie +473 -0
  46. package/reference/creatures/Phoenix.genie +294 -0
  47. package/reference/creatures/Picstix.genie +1788 -0
  48. package/reference/creatures/Psybat.genie +602 -0
  49. package/reference/creatures/Star.genie +339 -0
  50. package/reference/creatures/Starfish.genie +458 -0
  51. package/reference/creatures/Transformer.genie +297 -0
  52. package/reference/creatures/TwoByTwo.genie +547 -0
  53. package/reference/creatures/Flower.genie +0 -41
  54. package/reference/creatures/Flyer.genie +0 -142
  55. package/reference/creatures/StarBurstShell.genie +0 -102
  56. package/reference/creatures/StarBurstShell9.genie +0 -102
@@ -0,0 +1,602 @@
1
+ creature Psybat
2
+ // A bat with striped wings, each wing a fan of 27 ribs, each rib a long vane ending in a bead,
3
+ // with a bone of beads beside it.
4
+ // Inspired by Psybat, a DancerDNA creature.
5
+
6
+ gene shoulder = 7.692 in -40..60 // how far from the middle each wing starts
7
+ gene spread = 23.93 in -171.9..171.9 // how far the wings turn out to the sides
8
+ gene vane_tilt = 43.04 in -45..45 // how far each rib tips up from the wing
9
+ gene vane_dip = -13.09 in -45..45 // how far its vane tips back down
10
+ gene vane_long = 7.706 in 1..11 // how long the vanes are
11
+ gene vane_out = -0.9186 in -14..14 // how far out along the vane its bead is
12
+ gene bone_grow = 1.038 in 1.01..1.1 // how much bigger the bone's bead is than the vane
13
+ gene bone_roll = 5.653 in -25..25 // how far the bone turns round from the vane
14
+ gene bone_out = -5.682 in -14..14 // how far out the bone's bead is
15
+ gene rib_gap = 0.1545 in -0.5..0.5 // how far apart the ribs are
16
+ gene rib_grow = 1.035 in 1.01..1.1 // how much bigger each rib is than the last
17
+ gene rib_roll = -17.97 in -25..25 // how far each rib turns round from the last
18
+
19
+ // Each part's two colours, which alternate in stripes across the wing, and how wide the
20
+ // stripes are.
21
+ gene vane_1 = hsv(35.2, 0.69, 0.82) in hsv(0, 0.4, 0.76)..hsv(237.6, 1, 1)
22
+ gene vane_2 = hsv(127.9, 0.6, 0.8) in hsv(0, 0.4, 0.44)..hsv(237.6, 1, 1)
23
+ gene vane_width_1 = 0.2256 in 0.05..0.3
24
+ gene vane_width_2 = 0.1792 in 0.05..0.3
25
+ gene tip_1 = hsv(266.1, 1, 1) in hsv(0, 0.77, 0.47)..hsv(360, 1, 1)
26
+ gene tip_2 = hsv(36.7, 1, 1) in hsv(0, 0.48, 0.87)..hsv(360, 1, 1)
27
+ gene tip_width_1 = 0.2484 in 0.05..0.3
28
+ gene tip_width_2 = 0.2001 in 0.05..0.3
29
+ gene bone_1 = hsv(42.2, 1, 1) in hsv(0, 1, 1)..hsv(176.4, 1, 1)
30
+ gene bone_2 = hsv(2.9, 1, 1) in hsv(0, 1, 1)..hsv(176.4, 1, 1)
31
+ gene bone_width_1 = 0.1182 in 0.05..0.3
32
+ gene bone_width_2 = 0.07559 in 0.05..0.3
33
+
34
+ shine 1
35
+ sharpness 1
36
+ shape ball
37
+ symmetric x {
38
+ wing
39
+ }
40
+
41
+ part wing {
42
+ branch {
43
+ move (shoulder, 0, 0)
44
+ yaw spread
45
+ repeat 27 as k {
46
+ let across = k / 27
47
+ branch {
48
+ pitch vane_tilt
49
+ branch {
50
+ pitch vane_dip
51
+ colour stripes(across, vane_1, vane_2, vane_width_1, vane_width_2)
52
+ lay { grow (1, 1, vane_long) }
53
+ forward vane_out
54
+ pitch -90
55
+ colour stripes(across, tip_1, tip_2, tip_width_1, tip_width_2)
56
+ lay
57
+ }
58
+ grow bone_grow
59
+ roll bone_roll
60
+ forward bone_out
61
+ pitch -90
62
+ colour stripes(across, bone_1, bone_2, bone_width_1, bone_width_2)
63
+ lay
64
+ }
65
+ forward -rib_gap
66
+ grow rib_grow
67
+ roll rib_roll
68
+ }
69
+ }
70
+ }
71
+
72
+ // Two colours in stripes at `t`: blending from `a` to `b` over `a_width`, back to `a` over
73
+ // `b_width`, and so on, for up to 16 blends, until the stripes reach 1. Hue blends in a straight
74
+ // line, as in a spectrum.
75
+ function stripes(t, a, b, a_width, b_width) {
76
+ let edge = 0
77
+ repeat 8 {
78
+ if t <= edge + a_width {
79
+ return spectrum(a, b)((t - edge) / a_width)
80
+ }
81
+ edge += a_width
82
+ if edge >= 1 {
83
+ return b
84
+ }
85
+ if t <= edge + b_width {
86
+ return spectrum(b, a)((t - edge) / b_width)
87
+ }
88
+ edge += b_width
89
+ if edge >= 1 {
90
+ return a
91
+ }
92
+ }
93
+ return a
94
+ }
95
+
96
+ variant member_2 {
97
+ shoulder = 5.438
98
+ spread = -58.96
99
+ vane_tilt = 27.63
100
+ vane_dip = 23.89
101
+ vane_long = 9.329
102
+ vane_out = 13.24
103
+ bone_grow = 1.042
104
+ bone_roll = -11.25
105
+ bone_out = -5.18
106
+ rib_gap = 0.01912
107
+ rib_grow = 1.017
108
+ rib_roll = -14.7
109
+ vane_1 = hsv(10, 0.77, 0.9)
110
+ vane_2 = hsv(227.5, 0.44, 0.44)
111
+ vane_width_1 = 0.2379
112
+ vane_width_2 = 0.2902
113
+ tip_1 = hsv(260.8, 0.88, 0.47)
114
+ tip_2 = hsv(69.7, 0.54, 0.87)
115
+ tip_width_1 = 0.2798
116
+ bone_1 = hsv(29.4, 1, 1)
117
+ bone_2 = hsv(58.6, 1, 1)
118
+ bone_width_1 = 0.1998
119
+ bone_width_2 = 0.1322
120
+ }
121
+
122
+ variant member_3 {
123
+ shoulder = 27.95
124
+ spread = 34.41
125
+ vane_tilt = 16.2
126
+ vane_dip = 39.03
127
+ vane_long = 9.1
128
+ vane_out = -13.56
129
+ bone_grow = 1.041
130
+ bone_roll = -18.88
131
+ bone_out = -7.175
132
+ rib_gap = -0.2084
133
+ rib_grow = 1.077
134
+ rib_roll = -12.06
135
+ vane_1 = hsv(68.6, 0.98, 0.89)
136
+ vane_2 = hsv(14.9, 0.87, 0.88)
137
+ vane_width_1 = 0.1128
138
+ vane_width_2 = 0.08712
139
+ tip_1 = hsv(46.8, 1, 1)
140
+ tip_2 = hsv(213.4, 1, 1)
141
+ tip_width_1 = 0.2116
142
+ tip_width_2 = 0.1981
143
+ bone_1 = hsv(20.5, 1, 1)
144
+ bone_2 = hsv(31.4, 1, 1)
145
+ bone_width_1 = 0.1683
146
+ bone_width_2 = 0.1016
147
+ }
148
+
149
+ variant member_4 {
150
+ shoulder = 10.44
151
+ spread = -4.346
152
+ vane_tilt = 33.6
153
+ vane_dip = 14.72
154
+ vane_long = 1.463
155
+ vane_out = 5.99
156
+ bone_grow = 1.05
157
+ bone_roll = 9.791
158
+ bone_out = -4.014
159
+ rib_gap = 0.104
160
+ rib_grow = 1.058
161
+ rib_roll = -14.87
162
+ vane_1 = hsv(131.5, 0.89, 0.88)
163
+ vane_2 = hsv(151.3, 0.94, 0.87)
164
+ vane_width_1 = 0.2127
165
+ vane_width_2 = 0.1509
166
+ tip_1 = hsv(310.1, 1, 1)
167
+ tip_2 = hsv(50.3, 1, 1)
168
+ tip_width_1 = 0.1881
169
+ tip_width_2 = 0.2339
170
+ bone_1 = hsv(67.7, 1, 1)
171
+ bone_2 = hsv(51.6, 1, 1)
172
+ bone_width_1 = 0.2023
173
+ bone_width_2 = 0.07759
174
+ }
175
+
176
+ variant member_5 {
177
+ shoulder = -0.9856
178
+ spread = -30.37
179
+ vane_tilt = 39.19
180
+ vane_dip = 8.473
181
+ vane_long = 9.962
182
+ vane_out = 7.175
183
+ bone_grow = 1.035
184
+ bone_roll = -6.537
185
+ bone_out = -2.442
186
+ rib_gap = 0
187
+ rib_grow = 1.017
188
+ rib_roll = -14.7
189
+ vane_1 = hsv(66.9, 0.85, 0.91)
190
+ vane_2 = hsv(202.7, 0.5, 0.5)
191
+ vane_width_1 = 0.2379
192
+ vane_width_2 = 0.2752
193
+ tip_1 = hsv(237.6, 0.77, 0.57)
194
+ tip_2 = hsv(36.7, 0.53, 0.9)
195
+ tip_width_1 = 0.2434
196
+ bone_1 = hsv(9, 1, 1)
197
+ bone_2 = hsv(16.2, 1, 1)
198
+ bone_width_1 = 0.1707
199
+ bone_width_2 = 0.1656
200
+ }
201
+
202
+ variant member_6 {
203
+ shoulder = 7.829
204
+ spread = -106
205
+ vane_tilt = -33.76
206
+ vane_dip = -25.54
207
+ vane_long = 10.19
208
+ vane_out = 7.639
209
+ bone_grow = 1.082
210
+ bone_roll = -21.25
211
+ bone_out = -5.408
212
+ rib_gap = -0.09699
213
+ rib_grow = 1.077
214
+ rib_roll = -12.06
215
+ vane_1 = hsv(41.8, 0.52, 0.91)
216
+ vane_2 = hsv(6.9, 0.87, 0.91)
217
+ vane_width_1 = 0.1128
218
+ vane_width_2 = 0.0656
219
+ tip_1 = hsv(222.5, 1, 1)
220
+ tip_2 = hsv(257.4, 1, 1)
221
+ tip_width_1 = 0.07219
222
+ tip_width_2 = 0.242
223
+ bone_1 = hsv(26.8, 1, 1)
224
+ bone_2 = hsv(147.7, 1, 1)
225
+ bone_width_1 = 0.05724
226
+ bone_width_2 = 0.05775
227
+ }
228
+
229
+ variant member_7 {
230
+ shoulder = -7.333
231
+ spread = -108.3
232
+ vane_tilt = 36.65
233
+ vane_dip = 18.01
234
+ vane_long = 5.141
235
+ vane_out = 12.04
236
+ bone_grow = 1.028
237
+ bone_roll = 6.923
238
+ bone_out = 8.366
239
+ rib_gap = 0.2219
240
+ rib_grow = 1.011
241
+ rib_roll = 18.23
242
+ vane_1 = hsv(182.6, 0.79, 0.96)
243
+ vane_2 = hsv(85.7, 0.81, 0.98)
244
+ vane_width_1 = 0.2354
245
+ vane_width_2 = 0.08049
246
+ tip_1 = hsv(193.2, 1, 1)
247
+ tip_2 = hsv(239.9, 1, 1)
248
+ tip_width_1 = 0.07623
249
+ tip_width_2 = 0.06358
250
+ bone_1 = hsv(8.8, 1, 1)
251
+ bone_2 = hsv(41.3, 1, 1)
252
+ bone_width_1 = 0.2097
253
+ bone_width_2 = 0.1
254
+ }
255
+
256
+ variant member_8 {
257
+ shoulder = 16.3
258
+ spread = 38.16
259
+ vane_tilt = 26.8
260
+ vane_dip = 33.96
261
+ vane_long = 6.837
262
+ vane_out = 7.871
263
+ bone_grow = 1.09
264
+ bone_roll = 21.49
265
+ bone_out = -6.003
266
+ rib_gap = 0.3033
267
+ rib_grow = 1.033
268
+ rib_roll = 13.24
269
+ vane_1 = hsv(209.6, 0.62, 0.86)
270
+ vane_2 = hsv(13.2, 0.8, 0.92)
271
+ vane_width_1 = 0.1907
272
+ vane_width_2 = 0.2833
273
+ tip_1 = hsv(190.7, 1, 1)
274
+ tip_2 = hsv(205.2, 1, 1)
275
+ tip_width_1 = 0.2014
276
+ tip_width_2 = 0.2555
277
+ bone_1 = hsv(41.5, 1, 1)
278
+ bone_2 = hsv(55.5, 1, 1)
279
+ bone_width_1 = 0.1
280
+ bone_width_2 = 0.1024
281
+ }
282
+
283
+ variant member_9 {
284
+ shoulder = 24.02
285
+ spread = -85
286
+ vane_tilt = 30.54
287
+ vane_dip = 33.96
288
+ vane_long = 10.51
289
+ vane_out = 9.462
290
+ bone_grow = 1.019
291
+ bone_roll = 21.58
292
+ bone_out = 8.44
293
+ rib_gap = 0.2219
294
+ rib_grow = 1.038
295
+ rib_roll = 19.25
296
+ vane_1 = hsv(236.4, 0.61, 0.84)
297
+ vane_2 = hsv(13.2, 0.8, 0.92)
298
+ vane_width_1 = 0.1907
299
+ vane_width_2 = 0.2833
300
+ tip_1 = hsv(190.7, 1, 1)
301
+ tip_2 = hsv(204.4, 1, 1)
302
+ tip_width_1 = 0.1002
303
+ tip_width_2 = 0.1588
304
+ bone_1 = hsv(41.9, 1, 1)
305
+ bone_2 = hsv(165.9, 1, 1)
306
+ bone_width_1 = 0.2097
307
+ bone_width_2 = 0.1293
308
+ }
309
+
310
+ variant member_10 {
311
+ shoulder = -30
312
+ spread = -82.99
313
+ vane_tilt = 36.65
314
+ vane_dip = 29.6
315
+ vane_long = 5.141
316
+ vane_out = 12.04
317
+ bone_grow = 1.028
318
+ bone_roll = -1.755
319
+ bone_out = 7.23
320
+ rib_gap = 0.2219
321
+ rib_grow = 1.01
322
+ rib_roll = 18.23
323
+ vane_1 = hsv(182.6, 0.79, 0.96)
324
+ vane_2 = hsv(85.7, 0.81, 0.98)
325
+ vane_width_1 = 0.1926
326
+ vane_width_2 = 0.07204
327
+ tip_1 = hsv(193.2, 1, 1)
328
+ tip_2 = hsv(183.4, 1, 1)
329
+ tip_width_1 = 0.09568
330
+ tip_width_2 = 0.06162
331
+ bone_2 = hsv(49.8, 1, 1)
332
+ bone_width_1 = 0.2097
333
+ bone_width_2 = 0.1
334
+ }
335
+
336
+ variant member_11 {
337
+ shoulder = 30.12
338
+ spread = -117.6
339
+ vane_tilt = 40.51
340
+ vane_dip = 39.03
341
+ vane_long = 3.944
342
+ vane_out = 13.08
343
+ bone_grow = 1.04
344
+ bone_roll = 14.84
345
+ bone_out = 6.604
346
+ rib_gap = 0.1032
347
+ rib_grow = 1.082
348
+ rib_roll = 20.64
349
+ vane_1 = hsv(40.2, 0.68, 0.99)
350
+ vane_2 = hsv(4.3, 0.97, 0.97)
351
+ vane_width_1 = 0.1721
352
+ vane_width_2 = 0.1968
353
+ tip_1 = hsv(193.2, 1, 1)
354
+ tip_2 = hsv(183.4, 1, 1)
355
+ tip_width_1 = 0.1071
356
+ tip_width_2 = 0.1673
357
+ bone_1 = hsv(174.3, 1, 1)
358
+ bone_2 = hsv(49.7, 1, 1)
359
+ bone_width_1 = 0.1735
360
+ bone_width_2 = 0.1266
361
+ }
362
+
363
+ variant member_12 {
364
+ shoulder = 28.47
365
+ spread = 16.84
366
+ vane_tilt = 16.2
367
+ vane_dip = 39.03
368
+ vane_long = 10.19
369
+ vane_out = -13.56
370
+ bone_grow = 1.082
371
+ bone_roll = -10.88
372
+ bone_out = -10.55
373
+ rib_gap = -0.09699
374
+ rib_grow = 1.077
375
+ rib_roll = -12.06
376
+ vane_1 = hsv(211.8, 0.53, 0.95)
377
+ vane_2 = hsv(6.9, 0.87, 0.91)
378
+ vane_width_1 = 0.1128
379
+ vane_width_2 = 0.2196
380
+ tip_1 = hsv(222.5, 1, 1)
381
+ tip_2 = hsv(1.3, 1, 1)
382
+ tip_width_1 = 0.07219
383
+ tip_width_2 = 0.1981
384
+ bone_1 = hsv(20.5, 1, 1)
385
+ bone_2 = hsv(101.9, 1, 1)
386
+ bone_width_1 = 0.05724
387
+ bone_width_2 = 0.05775
388
+ }
389
+
390
+ variant member_13 {
391
+ shoulder = 1.27
392
+ spread = -15.52
393
+ vane_tilt = 39.19
394
+ vane_dip = 8.473
395
+ vane_long = 9.962
396
+ vane_out = 7.175
397
+ bone_grow = 1.042
398
+ bone_roll = -7.311
399
+ bone_out = -2.442
400
+ rib_gap = 0
401
+ rib_grow = 1.038
402
+ rib_roll = -18.15
403
+ vane_1 = hsv(6.8, 0.82, 0.77)
404
+ vane_2 = hsv(219.1, 0.57, 0.52)
405
+ vane_width_1 = 0.2379
406
+ vane_width_2 = 0.242
407
+ tip_1 = hsv(260.8, 0.88, 0.47)
408
+ tip_2 = hsv(36.7, 0.53, 0.9)
409
+ tip_width_1 = 0.2798
410
+ tip_width_2 = 0.1667
411
+ bone_1 = hsv(29.4, 1, 1)
412
+ bone_2 = hsv(58.6, 1, 1)
413
+ bone_width_1 = 0.1755
414
+ bone_width_2 = 0.1322
415
+ }
416
+
417
+ variant member_14 {
418
+ shoulder = 0.5832
419
+ spread = -15.99
420
+ vane_tilt = 39.19
421
+ vane_dip = 6.612
422
+ vane_long = 9.362
423
+ vane_out = 7.695
424
+ bone_grow = 1.041
425
+ bone_roll = -4.502
426
+ bone_out = -8.896
427
+ rib_gap = 0
428
+ rib_grow = 1.048
429
+ rib_roll = -4.589
430
+ vane_1 = hsv(110.7, 0.74, 0.85)
431
+ vane_2 = hsv(218.5, 0.51, 0.44)
432
+ vane_width_1 = 0.2872
433
+ vane_width_2 = 0.2752
434
+ tip_1 = hsv(237.6, 0.77, 0.57)
435
+ tip_2 = hsv(121.4, 0.49, 0.97)
436
+ tip_width_1 = 0.2417
437
+ tip_width_2 = 0.2458
438
+ bone_1 = hsv(32.7, 1, 1)
439
+ bone_2 = hsv(25.1, 1, 1)
440
+ bone_width_1 = 0.2509
441
+ bone_width_2 = 0.1868
442
+ }
443
+
444
+ variant member_15 {
445
+ shoulder = -0.9856
446
+ spread = 70.76
447
+ vane_tilt = -39.49
448
+ vane_dip = 8.128
449
+ vane_long = 3.438
450
+ vane_out = -13.06
451
+ bone_grow = 1.035
452
+ bone_roll = -13.23
453
+ bone_out = 3.705
454
+ rib_gap = -0.09087
455
+ rib_grow = 1.028
456
+ rib_roll = -14.7
457
+ vane_1 = hsv(63, 0.85, 0.89)
458
+ vane_2 = hsv(103.3, 0.68, 0.61)
459
+ vane_width_1 = 0.2247
460
+ vane_width_2 = 0.2752
461
+ tip_1 = hsv(134.4, 0.88, 0.77)
462
+ tip_2 = hsv(36.7, 0.53, 0.9)
463
+ tip_width_1 = 0.1977
464
+ tip_width_2 = 0.1884
465
+ bone_1 = hsv(35.6, 1, 1)
466
+ bone_2 = hsv(16.2, 1, 1)
467
+ bone_width_1 = 0.2024
468
+ bone_width_2 = 0.1656
469
+ }
470
+
471
+ variant member_16 {
472
+ shoulder = 4.185
473
+ spread = -49.6
474
+ vane_tilt = 32.74
475
+ vane_dip = 33.9
476
+ vane_long = 5.141
477
+ vane_out = 9.462
478
+ bone_grow = 1.024
479
+ bone_roll = 13.16
480
+ bone_out = 6.765
481
+ rib_gap = 0.1888
482
+ rib_grow = 1.025
483
+ rib_roll = 19.25
484
+ vane_1 = hsv(231.4, 0.62, 0.85)
485
+ vane_2 = hsv(13.2, 0.8, 0.92)
486
+ vane_width_1 = 0.2197
487
+ vane_width_2 = 0.161
488
+ tip_1 = hsv(247.2, 1, 1)
489
+ tip_2 = hsv(204.4, 1, 1)
490
+ tip_width_1 = 0.1002
491
+ tip_width_2 = 0.1588
492
+ bone_1 = hsv(42, 1, 1)
493
+ bone_2 = hsv(53.7, 1, 1)
494
+ bone_width_1 = 0.2097
495
+ bone_width_2 = 0.08966
496
+ }
497
+
498
+ variant member_17 {
499
+ shoulder = 20.65
500
+ spread = -45.85
501
+ vane_tilt = 31.17
502
+ vane_dip = 9.516
503
+ vane_long = 9.571
504
+ vane_out = 7.931
505
+ bone_grow = 1.019
506
+ bone_roll = 2.856
507
+ bone_out = 6.558
508
+ rib_gap = 0.129
509
+ rib_grow = 1.038
510
+ rib_roll = -13.13
511
+ vane_1 = hsv(215.4, 0.66, 0.88)
512
+ vane_2 = hsv(68.1, 0.84, 0.98)
513
+ vane_width_1 = 0.2197
514
+ vane_width_2 = 0.265
515
+ tip_1 = hsv(190.7, 1, 1)
516
+ tip_2 = hsv(194.1, 1, 1)
517
+ tip_width_1 = 0.1415
518
+ tip_width_2 = 0.09897
519
+ bone_1 = hsv(42, 1, 1)
520
+ bone_2 = hsv(49.8, 1, 1)
521
+ bone_width_2 = 0.1197
522
+ }
523
+
524
+ variant member_18 {
525
+ shoulder = 4.185
526
+ spread = -85
527
+ vane_tilt = 32.2
528
+ vane_dip = 33.96
529
+ vane_long = 8.263
530
+ vane_out = 9.462
531
+ bone_grow = 1.019
532
+ bone_roll = 2.856
533
+ bone_out = 8.192
534
+ rib_gap = 0.05779
535
+ rib_grow = 1.032
536
+ rib_roll = -13.13
537
+ vane_1 = hsv(236.4, 0.61, 0.84)
538
+ vane_2 = hsv(13.2, 0.8, 0.92)
539
+ vane_width_1 = 0.2151
540
+ vane_width_2 = 0.1729
541
+ tip_1 = hsv(262, 1, 1)
542
+ tip_2 = hsv(190.4, 1, 1)
543
+ tip_width_2 = 0.1056
544
+ bone_1 = hsv(42.1, 1, 1)
545
+ bone_2 = hsv(77.2, 1, 1)
546
+ bone_width_1 = 0.1348
547
+ bone_width_2 = 0.07843
548
+ }
549
+
550
+ variant member_19 {
551
+ shoulder = 24.02
552
+ spread = -91.99
553
+ vane_tilt = 11.73
554
+ vane_dip = 33.96
555
+ vane_long = 9.374
556
+ vane_out = 12.51
557
+ bone_grow = 1.026
558
+ bone_roll = 21.58
559
+ bone_out = 8.44
560
+ rib_gap = 0.2219
561
+ rib_grow = 1.067
562
+ rib_roll = 19.25
563
+ vane_1 = hsv(209.7, 0.51, 0.81)
564
+ vane_2 = hsv(25.7, 0.81, 0.96)
565
+ vane_width_1 = 0.1907
566
+ vane_width_2 = 0.2614
567
+ tip_1 = hsv(240.4, 1, 1)
568
+ tip_2 = hsv(155, 1, 1)
569
+ tip_width_1 = 0.0933
570
+ tip_width_2 = 0.1588
571
+ bone_1 = hsv(99.6, 1, 1)
572
+ bone_2 = hsv(156.3, 1, 1)
573
+ bone_width_1 = 0.2097
574
+ bone_width_2 = 0.1293
575
+ }
576
+
577
+ variant member_20 {
578
+ shoulder = 60
579
+ spread = -97.69
580
+ vane_tilt = 11.73
581
+ vane_dip = 28.85
582
+ vane_long = 8.644
583
+ vane_out = 9.495
584
+ bone_grow = 1.026
585
+ bone_roll = 21.58
586
+ bone_out = 9.839
587
+ rib_gap = 0.0901
588
+ rib_grow = 1.067
589
+ rib_roll = 19.25
590
+ vane_1 = hsv(202.7, 0.47, 0.83)
591
+ vane_2 = hsv(25.7, 0.81, 0.96)
592
+ vane_width_1 = 0.1907
593
+ vane_width_2 = 0.2574
594
+ tip_1 = hsv(197.4, 1, 1)
595
+ tip_2 = hsv(122.3, 1, 1)
596
+ tip_width_1 = 0.08253
597
+ tip_width_2 = 0.1283
598
+ bone_1 = hsv(75, 1, 1)
599
+ bone_2 = hsv(156.6, 1, 1)
600
+ bone_width_1 = 0.2097
601
+ bone_width_2 = 0.1293
602
+ }