Watchmaker Expression Assistant for ChatGPT and Gemini

One thing that has proven invaluable to me is to have some custom prompts for working with Watchmaker expressions. Sometimes they are a bit too complex for me, and sometimes I just don’t feel like thinking.

So I thought I’d share them with the community:

ChatGPT Version

Gemini Version

Here are some examples of how I use it and the responses:

Request Property Formula
make layer 1 swing like a balance wheel motion Rotation math.sin(math.rad({drss}*6))*18
only show this thing every other minute Opacity (1-({dm}%2))*100
show it on odd minutes instead Opacity ({dm}%2)*100
make the second hand move 3 times/sec Rotation math.floor({drss}/2)*2
rotate with battery level from -70 to 70 Rotation -70+({bl}/100)*140
bl -50 to 50 Brightness -50+({bl}/100)*100
show LOW when battery gets low Text ({bl}<20) and ‘LOW’ or ‘’
make this glow pulse Glow / Opacity 50+50*math.abs(math.sin(math.rad({ds}*180)))
put this on a circle with a radius of 80 X math.sin(math.rad({drss}))*80
put this on a circle with a radius of 80 Y math.cos(math.rad({drss}))*-80
make a realistic-looking pendulum swing Rotation math.sin(math.rad({drss}*3))*25
move this around dial with my steps, starting at 0..175 Rotation (math.max(0,{sscp})/100)*175
make something blink for .25 seconds once every second Opacity ({dss}<250) and 100 or 0
map battery 20%-80% to 0-180° Rotation ((( {bl}<20) and 20 or (({bl}>80) and 80 or {bl}) )-20)/60*180
make it wiggle a little Rotation math.sin(math.rad({drss}*12))*5
make it bounce harder every second Y -math.abs(math.sin(math.rad({drss}*6)))*20
rotate this based on temperature Rotation {wt}*3
show AM or PM Text ({dh}<12) and ‘AM’ or ‘PM’
show Morning / Noon / Evening Text ({dh}<12) and ‘Morning’ or ({dh}<17) and ‘Noon’ or ‘Evening’
make this fade in and out all the time Opacity 50+50*math.sin(math.rad({drss}*3))
make a heartbeat effect Scale X / Scale Y 1+0.18*math.max(0,math.sin(math.rad({dss}/1000*720)))
make this only show when charging Opacity ({bc}==1) and 100 or 0
make a gauge that fills with steps Rotation / Fill (math.max(0,{sscp})/100)*180

It’s pretty good at guessing what you want. Of course, it can do some very advanced formulas as well. Telling it to explain is also useful to learn what it’s doing.

Just remember that it’s AI so it does get things wrong from time to time. Each chat session has random temperature settings so starting a new session usually helps.

These are great. Thanks for sharing. You could also add these to the formula library so others can search and reuse your handy work! (If you haven’t done so already).

Thanks for sharing these. Really useful examples. I agree with @jc73uk — they’d make great additions to the formula library so people can easily find and reuse them.

Thank you for sharing! I tried the Gemini version and it worked great :slight_smile: