Ping-pong table · celworld
seed

Ping-pong table

ping_pong_table v1Agent-madec4
Open in Playground

v1 cost

$0.482est.

Agent-made: its share of a Claude Code session, priced as API-equivalent Opus 5.5.

Output share
2.7k
Time share
97s
The agent session
All 1 version$0.482

Budget

c4 · 41 lines
Shapes34 / 70
Triangles3,780 / 6,000
Draw calls2 / 4
States
None: it rests
Used in
Made
1asset ping_pong_table "Ping-pong table" complexity=4
2// a ping-pong table for the break room: a coloured top with white edge and centre lines on folding
3// leg frames with casters, a net on clamp posts, a paddle resting on each half, and a ball that
4// never stops rallying over the net
5let topC = bottle:2|navy:2|cobalt|teal
6let legC = iron:2|silver
7let padA = cherry:3|tangerine
8let padB = inkDark:2|cobalt
9
10// the top and its white lines
11box top at=(0, .71, 0) size=(2.74, .05, 1.52) round=.015 bev=3 color=topC
12box edge x2 on=top at=(0, .047, 0) row=(0, 0, 1.46) size=(2.7, .02, .03) round=.005 color=white ink=none
13box end x2 on=top at=(0, .047, 0) row=(2.66, 0, 0) size=(.03, .02, 1.44) round=.005 color=white ink=none
14box centre on=top at=(0, .047, 0) size=(2.6, .02, .02) round=.005 color=white ink=none
15
16// leg frames: two A-frames with a cross bar and casters
17box apron on=top at=(0, -.08, 0) size=(2.3, .08, 1.2) round=.02 color=legC
18rod leg x2 on=apron row=(1.6, 0, 0) at=(0, 0, .45) to=(0, -.6, .1) r=.03 sides=8 color=legC
19rod leg2 x2 on=apron row=(1.6, 0, 0) at=(0, 0, -.45) to=(0, -.6, -.1) r=.03 sides=8 color=legC
20rod tie x2 on=apron row=(1.6, 0, 0) at=(0, -.45, -.525) to=(0, 0, 1.05) r=.025 sides=8 color=legC
21ball caster on=leg at=end r=.04 color=inkDark segs=8 rings=5
22ball caster2 on=leg2 at=end r=.04 color=inkDark segs=8 rings=5
23
24// the net on its clamp posts
25cyl post x2 on=top at=(0, .05, 0) row=(0, 0, 1.66) h=.17 r=.018 color=legC segs=8
26box net on=top at=(0, .065, 0) size=(.015, .14, 1.62) round=.006 bands=[.85:white] color=iron*1.5
27box clampbox on=post at=(0, -.06, 0) size=(.06, .06, .06) round=.015 color=legC
28
29// paddles resting on each half and the rallying ball
30cyl paddle on=top at=(-.7, .05, .3) rot=(0, 30, 0) h=.025 r=.085 depth=1.05 color=padA segs=24
31box grip on=paddle at=(.0, .0025, .12) size=(.035, .02, .12) round=.012 color=oak
32cyl paddle2 on=top at=(.75, .05, -.35) rot=(0, -150, 0) h=.025 r=.085 depth=1.05 color=padB segs=24
33box grip2 on=paddle2 at=(.0, .0025, .12) size=(.035, .02, .12) round=.012 color=oak
34// a bucket of spare balls under the net
35lathe bucket at=(.3, 0, .2) h=.22 r=.13 prof=[0:.8 1:1] color=sunflower segs=20
36ball spare x5 on=bucket ring=20 at=(.06, .21, 0) r=.035 color=white segs=10 rings=6
37ball spare2 on=bucket at=(0, .24, 0) r=.035 color=tangerine segs=10 rings=6
38ball ballx on=top at=(0, .3, .1) r=.03 color=white segs=10 rings=6 joint
39
40anim ballx px keys=[0:-1 .5:1 1:-1] hz=.55
41anim ballx py keys=[0:0 .25:-.24 .5:0 .75:-.24 1:0] hz=.55
42