Creatures › FlyingFish
FlyingFish
Three fish swimming in a triangle, with fins, eyes and tails, each chasing a fly. Inspired by FlyingFish, a DancerDNA creature.
28 genes · 21 variants
Its family
Each one is the same program with different genes. In the app, Morph glides from one to the next, and Breed starts from them.





















Genes
The values that change when FlyingFish mutates, breeds and morphs.
| Gene | What it does | Range | Value |
|---|---|---|---|
apart | how far apart the fish are | -20 to 40 | 32.1 |
fly_at | where each fly is from its fish | (-10, -15, -12.13) to (10, 15, 10) | (2.239, 4.799, -3.661) |
stray | how far the third fish strays up or down | -17 to 10 | 0.2733 |
head_shape | one of ball, ring | ball | |
dive | how far the fish tip their heads down | -65.41 to 65.41 | -8.008 |
bank | how far they roll | -114.6 to 114.6 | 0 |
stride | how far apart the body's segments are | 0.2 to 1 | 0.6983 |
thickness | how much longer each segment is than the last | 1 to 1.1 | 1.008 |
flap | where the body is in its beat, which bends it | 0 to 2 | 1.166 |
swim | where the segments' spacing starts its wave | -180 to 180 | -80.53 |
fin_size | how big the side fins are; never less than 0.2 | -1 to 1 | -0.05533 |
fin_length | how many beads each fin has | 7 to 11 | 7.154 |
fin_tilt | -57.3 to 57.3 | 33.67 | |
fin_curl | how far each bead of a fin turns from the last: up | -22.92 to 28.65 | 1.657 |
fin_sweep | and sideways | -5.73 to 28.65 | 6.333 |
fly_length | how many cones the fly has | 5 to 15 | 8.915 |
fly_size | 0.2 to 1.2 | 0.2073 | |
fly_curl | -22.92 to 28.65 | 12.83 | |
fly_sweep | -5.73 to 85.95 | 16.2 | |
body_1 | any hue | hsv(333.7, 1, 0.92, 1) | |
body_2 | any hue | hsv(309.1, 0.72, 0.88, 1) | |
body_3 | any hue | hsv(129.4, 0.85, 0.93, 1) | |
fin_1 | any hue | hsv(138.1, 0.79, 0.88, 1) | |
fin_2 | any hue | hsv(252, 1, 1, 1) | |
fin_3 | any hue | hsv(350.3, 0.71, 0.9, 1) | |
fly_1 | any hue | hsv(154.8, 0.9, 0.99, 1) | |
fly_2 | any hue | hsv(356.4, 0.81, 0.82, 1) | |
fly_3 | any hue | hsv(204.4, 0.9, 0.99, 1) |
The code
creature FlyingFish
// Three fish swimming in a triangle, with fins, eyes and tails, each chasing a fly.
// Inspired by FlyingFish, a DancerDNA creature.
gene apart = 32.1 in -20..40 // how far apart the fish are
gene fly_at = (2.239, 4.799, -3.661) in (-10, -15, -12.13)..(10, 15, 10) // where each fly is from its fish
gene stray = 0.2733 in -17..10 // how far the third fish strays up or down
gene head_shape = ball from [ball, ring]
gene dive = -8.008 in -65.41..65.41 // how far the fish tip their heads down
gene bank = 0 in -114.6..114.6 // how far they roll
gene stride = 0.6983 in 0.2..1 // how far apart the body's segments are
gene thickness = 1.008 in 1..1.1 // how much longer each segment is than the last
gene flap = 1.166 in 0..2 // where the body is in its beat, which bends it
gene swim = -80.53 in -180..180 // where the segments' spacing starts its wave
gene fin_size = -0.05533 in -1..1 // how big the side fins are; never less than 0.2
gene fin_length = 7.154 in 7..11 // how many beads each fin has
gene fin_tilt = 33.67 in -57.3..57.3
gene fin_curl = 1.657 in -22.92..28.65 // how far each bead of a fin turns from the last: up
gene fin_sweep = 6.333 in -5.73..28.65 // and sideways
gene fly_length = 8.915 in 5..15 // how many cones the fly has
gene fly_size = 0.2073 in 0.2..1.2
gene fly_curl = 12.83 in -22.92..28.65
gene fly_sweep = 16.2 in -5.73..85.95
// The colours of the body, from head to tail, of the fins and of the flies.
gene body_1 = hsv(333.7, 1, 0.92) in hsv(0, 0, 0.7)..hsv(360, 1, 1)
gene body_2 = hsv(309.1, 0.72, 0.88) in hsv(0, 0, 0.3)..hsv(360, 1, 1)
gene body_3 = hsv(129.4, 0.85, 0.93) in hsv(0, 0, 0.7)..hsv(360, 1, 1)
gene fin_1 = hsv(138.1, 0.79, 0.88) in hsv(0, 0, 0.7)..hsv(360, 1, 1)
gene fin_2 = hsv(252, 1, 1) in hsv(0, 0, 0.3)..hsv(360, 1, 1)
gene fin_3 = hsv(350.3, 0.71, 0.9) in hsv(0, 0, 0.7)..hsv(360, 1, 1)
gene fly_1 = hsv(154.8, 0.9, 0.99) in hsv(0, 0, 0.7)..hsv(360, 1, 1)
gene fly_2 = hsv(356.4, 0.81, 0.82) in hsv(0, 0, 0.3)..hsv(360, 1, 1)
gene fly_3 = hsv(204.4, 0.9, 0.99) in hsv(0, 0, 0.7)..hsv(360, 1, 1)
let body = spectrum(body_1, body_2, body_3)
let fins = spectrum(fin_1, fin_2, fin_3)
let flies = spectrum(fly_1, fly_2, fly_3)
pitch 90
repeat 3 as k {
if k > 0 {
yaw 60
forward apart
yaw 60
}
if k == 2 {
move (0, stray, 0)
}
fish
if k == 2 {
move (0, -stray, 0)
}
branch {
move fly_at
fly
}
}
part fish {
branch {
pitch dive
roll bank
shape head_shape
lay
forward stride / 2
reshape { grow (1, 1, 2) }
repeat 26 as k {
let along = k / 25
let swell = 1 + sin(degrees(along * 10)) / 2.2
yaw degrees(0.07) * wave(flap)
reshape { grow (swell * 0.93, swell, thickness) }
colour body(along)
lay
if k == 9 {
branch {
yaw -90
symmetric z {
fin
}
}
}
if k == 5 {
symmetric x {
eye
}
}
if k == 12 {
symmetric y {
tail
}
}
forward stride * sin(30 * k + swim) + 1
}
}
}
part fin {
branch {
grow max(fin_size, 0.2)
roll 90
move (0, 0, 4)
shape ball
reshape { grow (1, 1, 6); forward 0.5 }
pitch fin_tilt
repeat ceil(fin_length) as k {
pitch fin_curl
yaw fin_sweep
grow (1, 1, 0.9)
colour fins(k / (fin_length - 1))
lay
}
}
}
part tail {
branch {
grow 0.5
move (0, 3, 0)
shape cone
grow (0.5, 1, 1)
pitch -80.2
forward 3
lay
}
}
part eye {
branch {
shape ring
colour hsv(108, 0.5, 1)
move (1.5, 1, 0)
grow 0.5
lay
colour red
shape ball
grow 0.7
lay
}
}
part fly {
branch {
reshape { grow (1, 1, 5); forward 0.5 }
grow fly_size
shape cone
repeat ceil(fly_length) as k {
pitch fly_curl
yaw fly_sweep
reshape { grow (1, 1, 1.1) }
colour flies(k / (fly_length - 1))
lay
}
}
}
variant member_2 {
apart = 11.11
fly_at = (-0.5227, 2.8, -8.93)
stray = 1.059
dive = -6.291
bank = -59.47
stride = 0.3918
thickness = 1.054
flap = 1.289
swim = -107.7
fin_size = -0.9755
fin_length = 7.508
fin_tilt = 28.62
fin_curl = 3.049
fin_sweep = 5.008
fly_length = 11.72
fly_size = 0.5459
fly_curl = 28.09
fly_sweep = 6.877
body_1 = hsv(220.3, 0.78, 0.88)
body_2 = hsv(257.1, 0.83, 0.96)
body_3 = hsv(78.1, 0.99, 0.98)
fin_1 = hsv(125.5, 0.75, 0.89)
fin_2 = hsv(182.7, 0.86, 0.75)
fin_3 = hsv(248.7, 0.76, 0.88)
fly_1 = hsv(172.8, 0.96, 0.92)
fly_2 = hsv(305.1, 0.86, 0.95)
fly_3 = hsv(96.9, 0.71, 0.98)
}
variant member_3 {
apart = 27.26
fly_at = (9.506, -14.74, -12.12)
stray = -0.4087
dive = -38.35
bank = 12.86
stride = 0.3896
thickness = 1.036
flap = 1.289
fin_size = -0.9518
fin_length = 7.374
fin_tilt = 19.34
fin_curl = 0
fin_sweep = -1.298
fly_length = 9.985
fly_size = 0.5802
fly_curl = 19.68
fly_sweep = 28.17
body_1 = hsv(199.1, 0.6, 0.93)
body_2 = hsv(334.1, 0.85, 0.91)
body_3 = hsv(78.1, 0.99, 0.98)
fin_1 = hsv(210.7, 0.74, 0.93)
fin_2 = hsv(158.6, 0.82, 0.92)
fin_3 = hsv(197.8, 0.98, 0.89)
fly_1 = hsv(158, 0.86, 0.87)
fly_2 = hsv(276.4, 0.76, 0.88)
fly_3 = hsv(145.4, 0.74, 0.96)
}
variant member_4 {
apart = 11.11
fly_at = (0.8506, 10.05, -11.4)
stray = -4.078
dive = -11.2
bank = -59.47
stride = 0.2282
thickness = 1.058
flap = 1.188
swim = -177.2
fin_size = -0.5424
fin_length = 7.158
fin_tilt = 3.954
fin_curl = -9.357
fin_sweep = 0.008759
fly_length = 9.985
fly_size = 0.512
fly_curl = 25.92
fly_sweep = -1.973
body_1 = hsv(195.3, 0.71, 0.94)
body_2 = hsv(327, 0.78, 0.98)
body_3 = hsv(217.4, 0.99, 0.98)
fin_1 = hsv(87.4, 0.36, 0.83)
fin_2 = hsv(182.7, 0.86, 0.75)
fin_3 = hsv(204.2, 0.63, 0.84)
fly_1 = hsv(175.3, 0.6, 0.89)
fly_2 = hsv(276.4, 0.76, 0.88)
fly_3 = hsv(68.3, 0.48, 0.91)
}
variant member_5 {
apart = 11.11
fly_at = (-0.1468, -0.2625, -10.89)
stray = 9.912
dive = -6.291
bank = -59.47
stride = 0.339
thickness = 1.054
flap = 1.129
swim = -106.5
fin_size = -0.9506
fin_length = 7.705
fin_tilt = 39.69
fin_curl = -3.348
fin_sweep = 5.008
fly_length = 11.72
fly_size = 0.6
fly_curl = 28.09
fly_sweep = 7.298
body_1 = hsv(220.3, 0.78, 0.88)
body_2 = hsv(190.2, 0.59, 0.97)
body_3 = hsv(155.2, 0.86, 0.98)
fin_1 = hsv(125.5, 0.75, 0.89)
fin_2 = hsv(337.9, 0.77, 0.97)
fin_3 = hsv(248.7, 0.76, 0.88)
fly_1 = hsv(228.4, 0.71, 0.93)
fly_2 = hsv(307.2, 0.73, 0.83)
fly_3 = hsv(96.9, 0.71, 0.98)
}
variant member_6 {
apart = 27.26
fly_at = (1.506, -8.741, -0.1232)
stray = -15.95
dive = -52.88
bank = -25.47
stride = 0.3896
thickness = 1.016
flap = 1.289
fin_size = -0.9518
fin_length = 7.374
fin_tilt = 19.34
fin_curl = -0.283
fin_sweep = -1.298
fly_length = 11.12
fly_size = 0.5984
fly_curl = 11.33
fly_sweep = 28.17
body_1 = hsv(199.1, 0.6, 0.93)
body_2 = hsv(334.1, 0.85, 0.91)
body_3 = hsv(78.1, 0.99, 0.98)
fin_1 = hsv(137.7, 0.61, 0.94)
fin_2 = hsv(141.5, 0.64, 0.99)
fin_3 = hsv(169.1, 0.78, 0.92)
fly_1 = hsv(158, 0.86, 0.87)
fly_2 = hsv(282.5, 0.66, 0.98)
fly_3 = hsv(120.6, 0.54, 0.9)
}
variant member_7 {
apart = 11.11
fly_at = (1.705, 14.3, -7.613)
stray = -10.42
dive = -27.21
bank = -100.1
stride = 0.2282
thickness = 1.048
flap = 1.188
swim = -126.9
fin_size = -0.06071
fin_length = 7.158
fin_tilt = 3.954
fin_curl = -9.941
fin_sweep = 0.008759
fly_length = 8.08
fly_size = 0.512
fly_curl = 25.92
fly_sweep = 13.5
body_1 = hsv(150.4, 0.94, 1)
body_2 = hsv(327, 0.78, 0.98)
body_3 = hsv(217.4, 0.99, 0.98)
fin_1 = hsv(65.5, 0.43, 0.87)
fin_2 = hsv(201.3, 0.96, 0.9)
fin_3 = hsv(117.9, 0.8, 0.77)
fly_1 = hsv(186.6, 0.62, 0.86)
fly_2 = hsv(276.4, 0.76, 0.88)
fly_3 = hsv(68.3, 0.48, 0.91)
}
variant member_8 {
apart = 11.11
fly_at = (1.294, 13, -9.061)
stray = 0.6818
dive = -11.2
bank = -81.29
stride = 0.2691
thickness = 1.062
flap = 0.718
swim = -93.57
fin_size = -0.5424
fin_length = 8.141
fin_tilt = 3.954
fin_curl = -9.357
fin_sweep = 2.105
fly_length = 9.985
fly_size = 0.3535
fly_curl = 25.92
fly_sweep = 18.6
body_1 = hsv(195.3, 0.71, 0.94)
body_2 = hsv(286.5, 0.72, 0.85)
body_3 = hsv(249.5, 0.99, 0.91)
fin_1 = hsv(87.4, 0.36, 0.83)
fin_2 = hsv(182.7, 0.86, 0.75)
fin_3 = hsv(204.2, 0.63, 0.84)
fly_1 = hsv(175.3, 0.6, 0.89)
fly_2 = hsv(276.4, 0.76, 0.88)
fly_3 = hsv(68.3, 0.48, 0.91)
}
variant member_9 {
apart = 11.11
fly_at = (-0.6727, 3.123, -11.17)
stray = -14.53
dive = -11.2
bank = -59.47
stride = 0.4131
thickness = 1.041
flap = 1.237
swim = -157.1
fin_size = -0.5424
fin_length = 7.751
fin_tilt = 25.17
fin_curl = -9.357
fin_sweep = 3.095
fly_length = 10.47
fly_size = 0.4094
fly_curl = 25.92
fly_sweep = -1.973
body_1 = hsv(195.3, 0.71, 0.94)
body_2 = hsv(327, 0.78, 0.98)
body_3 = hsv(235.8, 0.84, 0.91)
fin_1 = hsv(30.2, 0.39, 0.77)
fin_2 = hsv(182.7, 0.86, 0.75)
fin_3 = hsv(204.2, 0.63, 0.84)
fly_1 = hsv(258.7, 0.48, 0.93)
fly_2 = hsv(276.4, 0.76, 0.88)
fly_3 = hsv(58.6, 0.72, 0.92)
}
variant member_10 {
apart = 17.04
fly_at = (-2.184, 9.66, -11.31)
stray = -14.81
dive = -27.21
bank = -83.47
stride = 0.327
thickness = 1.052
flap = 0.8101
swim = -87
fin_size = 0.3009
fin_length = 7.158
fin_tilt = 21.26
fin_curl = -15.84
fin_sweep = 2.992
fly_length = 6.273
fly_size = 0.6315
fly_curl = 25.92
fly_sweep = 5.87
body_1 = hsv(202.4, 0.9, 0.99)
body_2 = hsv(275.7, 0.53, 0.91)
body_3 = hsv(248.9, 0.76, 0.94)
fin_1 = hsv(200.3, 0.48, 0.9)
fin_2 = hsv(204.6, 0.72, 0.74)
fin_3 = hsv(277, 0.71, 0.72)
fly_1 = hsv(205.6, 0.73, 0.86)
fly_2 = hsv(326, 0.66, 0.75)
fly_3 = hsv(76.7, 0.3, 0.87)
}
variant member_11 {
apart = 29.94
fly_at = (-2.184, 9.66, -11.31)
stray = 6.563
dive = -61.08
bank = -83.47
stride = 0.3001
thickness = 1.055
flap = 1.258
swim = -28.49
fin_size = 0.7504
fin_length = 9.433
fin_tilt = 21.26
fin_curl = 6.364
fin_sweep = 2.992
fly_length = 13.67
fly_size = 0.6315
fly_curl = 25.92
fly_sweep = 77.75
body_1 = hsv(202.4, 0.9, 0.99)
body_2 = hsv(259, 0.46, 0.34)
body_3 = hsv(165.4, 0.87, 0.92)
fin_1 = hsv(285.6, 0.29, 0.93)
fin_2 = hsv(214.1, 0.76, 0.33)
fin_3 = hsv(325.3, 0.76, 0.85)
fly_1 = hsv(93.5, 0.38, 0.77)
fly_2 = hsv(186.1, 0.13, 0.91)
fly_3 = hsv(41.3, 0.03, 0.8)
}
variant member_12 {
apart = -18.23
fly_at = (-2.184, 9.66, -11.31)
stray = -3.389
dive = 31.35
bank = -97.63
stride = 0.3301
thickness = 1.071
flap = 0.1711
swim = 51
fin_size = 0.5962
fin_length = 7.5
fin_tilt = 20.07
fin_curl = -9.169
fin_sweep = 2.992
fly_length = 13.36
fly_size = 1.169
fly_curl = -20.28
fly_sweep = 5.87
body_1 = hsv(202.4, 0.9, 0.99)
body_2 = hsv(17, 0.46, 0.35)
body_3 = hsv(99.5, 0.13, 0.84)
fin_1 = hsv(290.3, 0.18, 0.71)
fin_2 = hsv(61, 0.51, 0.68)
fin_3 = hsv(25.1, 0.79, 0.75)
fly_1 = hsv(243.9, 0.74, 0.83)
fly_2 = hsv(206.7, 0.76, 0.74)
fly_3 = hsv(76.7, 0.3, 0.87)
}
variant member_13 {
apart = 29.94
fly_at = (-6.185, 2.056, -8.474)
stray = 6.563
dive = -19.54
bank = -55.82
stride = 0.2569
thickness = 1.061
flap = 1.685
swim = -30.64
fin_size = 0.7621
fin_length = 10.44
fin_tilt = 21.26
fin_curl = 6.364
fin_sweep = -3.675
fly_length = 10.24
fly_size = 0.7337
fly_curl = 18.67
fly_sweep = 77.75
body_1 = hsv(202.4, 0.9, 0.99)
body_2 = hsv(259, 0.46, 0.34)
body_3 = hsv(131, 0.89, 0.9)
fin_1 = hsv(315.4, 0.37, 1)
fin_2 = hsv(340.6, 0.69, 0.39)
fin_3 = hsv(325.3, 0.76, 0.85)
fly_1 = hsv(72.4, 0.43, 0.79)
fly_2 = hsv(149.6, 0, 0.95)
fly_3 = hsv(21, 0.33, 0.88)
}
variant member_14 {
apart = 15.46
fly_at = (4.313, -3.747, -3.715)
stray = -10.71
dive = -38.35
bank = -39.36
stride = 0.4795
thickness = 1.036
flap = 1.223
fin_size = -0.7883
fin_length = 7.588
fin_tilt = 26.15
fin_curl = 7.205
fin_sweep = -1.982
fly_length = 8.879
fly_size = 0.7447
fly_curl = 19.68
fly_sweep = 20.5
body_1 = hsv(191.1, 0.55, 0.96)
body_2 = hsv(334.1, 0.85, 0.91)
body_3 = hsv(78.1, 0.99, 0.98)
fin_1 = hsv(210.7, 0.74, 0.93)
fin_2 = hsv(268, 0.77, 0.8)
fin_3 = hsv(261.4, 0.81, 0.93)
fly_1 = hsv(26.8, 0.48, 0.87)
fly_2 = hsv(276.4, 0.76, 0.88)
fly_3 = hsv(106.1, 0.95, 0.89)
}
variant member_15 {
apart = -3.514
fly_at = (-2.184, 9.66, -11.31)
stray = 9.386
dive = -27.21
bank = -83.47
stride = 0.3298
thickness = 1.052
flap = 1.63
swim = -118.3
fin_size = 0.3009
fin_length = 7.158
fin_tilt = 21.26
fin_curl = -15.84
fin_sweep = 2.992
fly_length = 6.273
fly_size = 0.6315
fly_curl = 25.92
fly_sweep = 5.87
body_1 = hsv(202.4, 0.9, 0.99)
body_2 = hsv(282.7, 0.84, 0.41)
body_3 = hsv(207.3, 0.09, 0.72)
fin_1 = hsv(200.3, 0.48, 0.9)
fin_2 = hsv(214.1, 0.76, 0.33)
fin_3 = hsv(240.6, 0.84, 0.91)
fly_1 = hsv(211.7, 0.52, 0.83)
fly_2 = hsv(326, 0.66, 0.75)
fly_3 = hsv(109.5, 0.1, 0.98)
}
variant member_16 {
apart = -15.07
fly_at = (-9.57, -3.818, -11.2)
stray = -16.73
dive = 37.01
bank = -105.8
stride = 0.5575
thickness = 1.08
flap = 0.6
swim = 10.01
fin_size = 0.9106
fin_length = 7.706
fin_tilt = 10.5
fin_curl = -9.143
fin_sweep = 2.992
fly_length = 14.9
fly_size = 0.8439
fly_curl = -12.02
fly_sweep = 5.87
body_1 = hsv(239.5, 0.94, 0.98)
body_2 = hsv(74.3, 0.48, 0.39)
body_3 = hsv(12.5, 0.18, 0.82)
fin_1 = hsv(308.4, 0.48, 0.73)
fin_2 = hsv(54.9, 0.35, 0.82)
fin_3 = hsv(10.8, 0.91, 0.81)
fly_1 = hsv(344.1, 0.51, 0.77)
fly_2 = hsv(304.3, 0.87, 0.97)
fly_3 = hsv(59.6, 0.49, 0.91)
}
variant member_17 {
apart = -5.667
fly_at = (-2.184, 9.66, -11.31)
stray = 8.754
dive = 27.41
bank = -97.63
stride = 0.3301
thickness = 1.092
flap = 0.1711
swim = 3.695
fin_size = 0.5962
fin_length = 7.311
fin_tilt = 24.59
fin_curl = -5.176
fin_sweep = -2.651
fly_length = 14.73
fly_size = 1.169
fly_curl = -20.28
fly_sweep = -2.184
body_1 = hsv(202.4, 0.9, 0.99)
body_2 = hsv(17, 0.46, 0.35)
body_3 = hsv(99.5, 0.13, 0.84)
fin_1 = hsv(290.3, 0.18, 0.71)
fin_2 = hsv(61, 0.51, 0.68)
fin_3 = hsv(25.1, 0.79, 0.75)
fly_1 = hsv(336.7, 0.94, 0.85)
fly_2 = hsv(206.7, 0.76, 0.74)
fly_3 = hsv(50.8, 0.11, 0.85)
}
variant member_18 {
apart = 7.815
fly_at = (-2.184, 9.66, -11.31)
stray = -16.93
head_shape = ring
dive = -55.01
bank = -55.42
stride = 0.5655
thickness = 1.052
flap = 0.2385
swim = 1.673
fin_size = 0.3009
fin_length = 7.158
fin_tilt = 20.07
fin_curl = -15.84
fin_sweep = 13.35
fly_length = 6.999
fly_size = 0.2993
fly_curl = -20.28
fly_sweep = 5.87
body_1 = hsv(202.4, 0.9, 0.99)
body_2 = hsv(233.4, 0.94, 0.59)
body_3 = hsv(187.2, 0.6, 0.72)
fin_1 = hsv(312.3, 0.23, 0.8)
fin_2 = hsv(71.3, 0.68, 0.48)
fin_3 = hsv(3.5, 0.45, 0.99)
fly_1 = hsv(319.6, 0.83, 0.84)
fly_2 = hsv(235.8, 0.19, 0.65)
fly_3 = hsv(76.7, 0.3, 0.87)
}
variant member_19 {
apart = 1.68
fly_at = (-2.184, 9.66, -11.31)
stray = 6.95
dive = 16.87
bank = -83.47
stride = 0.327
thickness = 1.057
flap = 0.8101
swim = -87
fin_size = -0.9209
fin_length = 7.158
fin_tilt = 21.26
fin_curl = 11.69
fin_sweep = -1.826
fly_length = 14.65
fly_size = 0.6315
fly_curl = 25.92
fly_sweep = 42.54
body_1 = hsv(202.4, 0.9, 0.99)
body_2 = hsv(93.5, 0.57, 0.71)
body_3 = hsv(248.9, 0.76, 0.94)
fin_1 = hsv(200.3, 0.48, 0.9)
fin_2 = hsv(204.6, 0.72, 0.74)
fin_3 = hsv(297.6, 0.59, 0.93)
fly_1 = hsv(205.6, 0.73, 0.86)
fly_2 = hsv(326, 0.66, 0.75)
fly_3 = hsv(228.3, 0.16, 0.8)
}
variant member_20 {
apart = -3.514
fly_at = (-2.184, 9.66, -11.31)
stray = 9.386
dive = 31.97
bank = -83.47
stride = 0.3001
thickness = 1.055
flap = 1.258
swim = -28.49
fin_size = 0.3009
fin_length = 8.609
fin_tilt = 21.26
fin_curl = 6.364
fin_sweep = 2.992
fly_length = 12.43
fly_size = 0.6315
fly_curl = 25.92
fly_sweep = 77.75
body_1 = hsv(202.4, 0.9, 0.99)
body_2 = hsv(259, 0.46, 0.34)
body_3 = hsv(138.5, 0.01, 0.82)
fin_1 = hsv(285.6, 0.29, 0.93)
fin_2 = hsv(214.1, 0.76, 0.33)
fin_3 = hsv(37.7, 0.18, 0.87)
fly_1 = hsv(17.3, 0, 0.98)
fly_2 = hsv(323.7, 0.56, 0.71)
fly_3 = hsv(99.5, 1, 0.84)
}
variant member_21 {
apart = -4.181
fly_at = (-6.867, 1.985, -9.35)
stray = -3.389
dive = 6.746
bank = -73.79
stride = 0.3936
thickness = 1.071
flap = 0.6
swim = 10.01
fin_size = 0.9106
fin_length = 7.706
fin_tilt = 20.07
fin_curl = -9.143
fin_sweep = 2.992
fly_length = 14.24
fly_size = 1.044
fly_curl = -15.11
fly_sweep = 5.87
body_1 = hsv(202.4, 0.9, 0.99)
body_2 = hsv(17, 0.46, 0.35)
body_3 = hsv(12.5, 0.18, 0.82)
fin_1 = hsv(322.2, 0.36, 0.74)
fin_2 = hsv(54.9, 0.35, 0.82)
fin_3 = hsv(10.8, 0.91, 0.81)
fly_1 = hsv(352.9, 0.36, 0.76)
fly_2 = hsv(354.1, 0.63, 0.85)
fly_3 = hsv(76.7, 0.3, 0.87)
}
variant member_22 {
apart = -18.23
fly_at = (-2.184, 9.66, -11.31)
stray = -3.389
dive = 11.64
bank = -97.63
stride = 0.4129
thickness = 1.071
flap = 0.3681
swim = 51
fin_size = 0.5962
fin_length = 7.972
fin_tilt = 44.97
fin_curl = -9.169
fin_sweep = -5.202
fly_length = 13.36
fly_size = 1.086
fly_curl = -20.28
fly_sweep = 5.87
body_1 = hsv(217.6, 0.66, 1)
body_2 = hsv(88.9, 0.4, 0.44)
body_3 = hsv(141.3, 0.13, 0.84)
fin_1 = hsv(290.3, 0.18, 0.71)
fin_2 = hsv(8.8, 0.56, 0.79)
fin_3 = hsv(25.1, 0.79, 0.75)
fly_1 = hsv(225.8, 0.56, 0.8)
fly_2 = hsv(206.7, 0.76, 0.74)
fly_3 = hsv(76.7, 0.3, 0.87)
}