Crystal-back kaiju · celworld
seed

Crystal-back kaiju

kaiju-2 v1Made by APIc10
Open in Playground

v1 cost

$0.976

API, priced from the call usage.

Time
5m 45s
The run, with the maths
All 1 version$0.976

Budget

c10 · 140 lines
Shapes90 / 640
Triangles26,816 / 48,000
Draw calls7 / 8
States
idle · walk · roar · charge
Used in
No scene yet
Made
1asset kaiju "Crystal-back kaiju" complexity=10
2// a 40 m family-friendly city boss: a pear-shaped upright reptile on two stumpy pillar legs with huge
3// planted feet, a fat dragging tail, a giant round head with a pale snout, beetle brows, an overbite
4// of friendly fangs and corner tusks; crystal plates run from the back of the head down the spine to a
5// glowing tail spike, every plate tipped with a glow crystal; a glowing chest core in a dark rim;
6// banded belly plates. Seeds pick the colourway, the plate shape, single or double plate rows and the horns.
7
8// proportions
9let S = 37..43
10let PS = int(0..2.999)
11let PH = sel(PS, .13, .085, .15)*S
12let PR = sel(PS, .055, .08, .04)*S
13let PSEG = sel(PS, 4, 8, 5)
14let DR = chance(.5)
15let HS = int(0..2.999)
16
17// colourways: reef, volcano, amethyst, jungle, frost
18let CW = int(0..4.999)
19let mainC = sel(CW, teal, cherry, grape, leafPaint, cobalt)
20let bellyC = sel(CW, cream, honey, peach, lemon, white)
21let bellyD = bellyC*.82
22let plateC = sel(CW, aqua, tangerine, lilac, mint, sky)
23let glowA = sel(CW, sunflower, lemon, bubblegum, aqua, mint)
24let glowB = mix(glowA, white, .55)
25let darkC = sel(CW, navy, plum, plum, bottle, navy)
26let hornC = mix(bellyC, white, .3)
27
28// body: the root bone, a pear-shaped trunk with a banded belly
29lathe body at=(0, .22*S, 0) h=.52*S r=.24*S prof=[0:.85 .25:1 .6:.9 1:.6] color=mainC segs=40 rings=24 joint
30ball belly on=body at=(0, .17*S, .14*S) r=(.16, .19, .11)*S color=bellyC bands=[0:bellyC .2:bellyD .23:bellyC .42:bellyD .45:bellyC .64:bellyD .67:bellyC .86:bellyD .89:bellyC] segs=28 rings=20
31
32// legs: stumpy pillars with fat thighs and huge planted feet
33limb leg on=body at=(.135*S, .06*S, 0) mirror len=.17*S r=(.1, .085)*S color=mainC segs=20 joint
34ball thigh on=leg at=(0, -.04*S, 0) r=(.12, .12, .13)*S color=mainC segs=24 rings=16
35ball foot on=leg at=end+(0, -.11*S, .035*S) r=(.115, .09, .15)*S half bands=[0:darkC .14:mainC] color=mainC segs=28 rings=14 joint
36
37// tail: seven links shrinking back to the ground
38ball tail x7 on=body at=(0, .12*S, -.17*S) chain=(0, -.065*S, -.13*S) scale=.85 r=(.15, .14, .18)*S color=mainC segs=24 rings=16 joint
39
40// head: a big round head with a snout and a hinged pale jaw
41ball head on=body at=(0, .6*S, .06*S) r=(.17, .15, .17)*S color=mainC segs=40 rings=28 joint
42ball snout on=head at=(0, -.03*S, .13*S) r=(.11, .085, .11)*S color=mainC segs=28 rings=16
43ball jaw on=head at=(0, -.05*S, -.02*S) r=.03*S color=mainC segs=6 rings=4 joint
44ball chin on=jaw at=(0, -.045*S, .1*S) r=(.14, .055, .12)*S color=bellyC segs=28 rings=16
45ball tongue on=chin at=(0, .036*S, .01*S) r=(.085, .03, .075)*S color=berryRed segs=14 rings=8
46
47// arms: short and stout, with three-claw hands
48ball shoulder on=body at=(.17*S, .38*S, .06*S) mirror r=.075*S color=mainC segs=20 rings=12
49limb arm on=body at=(.17*S, .38*S, .06*S) mirror len=.15*S r=(.06, .05)*S tilt=20 roll=18 color=mainC segs=16 joint
50ball hand on=arm at=end r=.06*S color=mainC segs=16 rings=10
51cone claw x3 on=hand row=(.034*S, 0, 0) at=(0, -.04*S, .025*S) tilt=150 h=.035*S r=.014*S color=hornC segs=6
52cone toe x3 on=foot row=(.064*S, 0, 0) at=(0, .03*S, .11*S) tilt=80 h=.05*S r=.026*S color=hornC segs=8
53
54// chest core: a glowing banded orb in a dark rim
55ball core on=body at=(0, .4*S, .17*S) r=.055*S color=glowA bands=[0:glowA .45:glowB .8:white] ink=glow segs=18 rings=12 joint
56torus corerim on=body at=(0, .4*S, .175*S) rot=(90, 0, 0) R=.062*S r=.016*S color=darkC segs=28 sides=8
57
58// face: big eyes, beetle brows, nostrils
59face look on=head eyes=round:4|happy mouth=smile size=.24 spacing=30 eyeY=24 mouthY=-60 mouthW=.3 iris=glowA
60ball brow on=head at=(.07*S, .105*S, .105*S) mirror roll=12 r=(.065, .025, .04)*S color=darkC segs=14 rings=8
61ball nostril on=snout surf=(14, 35) mirror lift=-.008*S r=.016*S color=darkC segs=8 rings=5
62
63// friendly fangs: an overbite row and two corner tusks
64cone fang x4 on=snout row=(.046*S, 0, 0) at=(0, -.05*S, .07*S) tilt=180 h=.05*S r=.018*S color=white segs=8
65cone tusk on=chin at=(.115*S, .02*S, .04*S) mirror h=.05*S r=.022*S color=white segs=8
66
67// horns: swept back, rhino nose, or a crystal crown
68cone horn on=head surf=(42, 48) mirror lift=-.02*S h=.11*S r=.035*S bend=-35 color=hornC segs=10 if=HS==0
69cone nosehorn on=snout surf=(0, 45) lift=-.01*S h=.075*S r=.032*S bend=-15 color=hornC segs=10 if=HS==1
70cone nub on=head surf=(38, 52) mirror lift=-.015*S h=.05*S r=.025*S color=hornC segs=8 if=HS==1
71cone crown x3 on=head surf=(-35+t*70, 62) lift=-.01*S h=(.09-abs(t-.5)*.06)*S r=.022*S color=plateC segs=5 if=HS==2
72
73// crystal back plates: a single centre row or a double row, each with a glow tip
74cone plate x4..6 on=body if=DR==0 at=(0, (.17+t*.3)*S, -(.215-t*.075)*S) tilt=-(60-t*35) scale=1.15-abs(t-.5)*.5 h=PH r=PR*.4 depth=2.5 segs=PSEG color=plateC joint
75cone tip on=plate at=(0, PH*.58, 0) h=PH*.44 r=PR*.4*.46 depth=2.5 segs=PSEG color=glowA bands=[.5:glowB] ink=glow joint
76cone plateL x3..5 on=body if=DR at=(.055*S, (.17+t*.3)*S, -(.21-t*.075)*S) mirror tilt=-(60-t*35) roll=-14 scale=1.1-abs(t-.5)*.5 h=PH r=PR*.4 depth=2.5 segs=PSEG color=plateC joint
77cone tipL on=plateL at=(0, PH*.58, 0) h=PH*.44 r=PR*.4*.46 depth=2.5 segs=PSEG color=glowA bands=[.5:glowB] ink=glow joint
78cone hplate x3 on=head at=(0, sel(i, .035, .086, .12)*S, -sel(i, .148, .117, .072)*S) tilt=-sel(i, 70, 48, 25) scale=sel(i, .7, .8, .72) h=PH r=PR*.4 depth=2.5 segs=PSEG color=plateC joint
79cone htip on=hplate at=(0, PH*.58, 0) h=PH*.44 r=PR*.4*.46 depth=2.5 segs=PSEG color=glowA bands=[.5:glowB] ink=glow joint
80cone tplate on=tail at=(0, .1*S, 0) tilt=-20 h=PH*.9 r=PR*.4 depth=2.5 segs=PSEG color=plateC joint
81cone ttip on=tplate at=(0, PH*.9*.58, 0) h=PH*.9*.44 r=PR*.4*.46 depth=2.5 segs=PSEG color=glowA bands=[.5:glowB] ink=glow joint
82
83// the glowing tail spike on the last link
84cone tailspike on=tail if=i==6 at=(0, .02*S, -.13*S) tilt=-75 h=PH*1.1 r=PR*.35 segs=PSEG color=plateC joint
85cone stip on=tailspike at=(0, PH*1.1*.55, 0) h=PH*1.1*.47 r=PR*.35*.49 segs=PSEG color=glowA bands=[.5:glowB] ink=glow joint
86
87// fx: roar burst, charge build-up at the mouth
88fx roar: puff on=chin at=(0, .05*S, .14*S) dir=(0, .6, 1) speed=10 spread=20 gravity=-1 size=.03*S grow=3 n=10 hz=.6 color=white color2=glowB
89fx roar: sparkle on=snout at=front spread=.2*S size=.02*S n=14 hz=1 color=glowA color2=white
90fx charge: smoke on=chin at=(0, .04*S, .13*S) dir=(0, .3, 1) speed=2 spread=25 gravity=-1 size=.015*S grow=3 n=10 hz=.5 color=glowA color2=greystone
91fx charge: sparkle on=snout at=front+(0, -.03*S, .03*S) spread=.08*S size=.012*S n=12 hz=1.5 color=glowA color2=white
92
93// idle: breathing, tail sway, slow head look, core glow
94anim idle: body breathe amp=.012
95anim idle: tail ry sin amp=8 hz=.25 stagger=.1
96anim idle: head ry sin amp=15 hz=.12
97anim idle: head rx sin amp=3 hz=.2 phase=.3
98anim idle: jaw rx sin amp=3 hz=.3
99anim idle: core s sin amp=.08 hz=.6
100anim idle: arm rx sin amp=4 hz=.3 twin=.5
101
102// walk: ground-shaking stomp, feet kept flat, tail swinging, plates rippling
103anim walk: leg rx sin amp=20 hz=.45 twin=.5
104anim walk: foot rx sin amp=16 hz=.45 twin=.5 phase=.5
105anim walk: body py bounce amp=.012*S hz=.9
106anim walk: body rz sin amp=4 hz=.45
107anim walk: arm rx sin amp=12 hz=.45 twin=.5 phase=.5
108anim walk: head rx sin amp=3 hz=.9
109anim walk: tail ry sin amp=12 hz=.45 stagger=.1
110anim walk: plate s sin amp=.1 hz=.9 stagger=.15
111anim walk: plateL s sin amp=.1 hz=.9 stagger=.15
112anim walk: hplate s sin amp=.1 hz=.9 stagger=.15
113anim walk: tplate s sin amp=.1 hz=.9 stagger=.12
114anim walk: core s sin amp=.08 hz=.9
115
116// roar: lean back, head up, jaw wide, arms raised, tail lashing
117anim roar: body rx keys=[0:0 .25:-6 .75:-6 1:0] hz=.35
118anim roar: leg rx keys=[0:0 .25:6 .75:6 1:0] hz=.35
119anim roar: head rx keys=[0:0 .25:-28 .75:-28 1:0] hz=.35
120anim roar: jaw rx keys=[0:0 .25:32 .75:32 1:0] hz=.35
121anim roar: arm rz keys=[0:0 .25:65 .75:65 1:0] hz=.35
122anim roar: arm rx keys=[0:0 .25:-50 .75:-50 1:0] hz=.35
123anim roar: tail ry sin amp=18 hz=1.2 stagger=.1
124anim roar: tip s sin amp=.2 hz=1.5 stagger=.1
125anim roar: tipL s sin amp=.2 hz=1.5 stagger=.1
126anim roar: ttip s sin amp=.2 hz=1.5 stagger=.1
127
128// charge: crouch and glare, core and every crystal pulse brighter
129anim charge: body rx keys=[0:0 1:12] hz=1 once
130anim charge: leg rx keys=[0:0 1:-12] hz=1 once
131anim charge: head rx keys=[0:0 1:-6] hz=1 once
132anim charge: jaw rx keys=[0:0 1:12] hz=1 once
133anim charge: arm rx keys=[0:0 1:-30] hz=1 once
134anim charge: core s sin amp=.3 hz=2.5
135anim charge: tip s sin amp=.35 hz=2.5 stagger=.08
136anim charge: tipL s sin amp=.35 hz=2.5 stagger=.08
137anim charge: htip s sin amp=.35 hz=2.5 stagger=.08
138anim charge: ttip s sin amp=.35 hz=2.5 stagger=.08
139anim charge: stip s sin amp=.4 hz=2.5
140anim charge: tail ry sin amp=6 hz=2 stagger=.1
141