
Write a Python program that shows 20 balls bouncing inside a spinning heptagon: - All balls have the same radius. - All balls have a number on it from 1 to 20. - All balls drop from the heptagon center when starting. - Colors are: #f8b862, #f6ad49, #f39800, #f08300, #ec6d51, #ee7948, #ed6d3d, #ec6800, #ec6800, #ee7800, #eb6238, #ea5506, #ea5506, #eb6101, #e49e61, #e45e32, #e17b34, #dd7a56, #db8449, #d66a35 - The balls should be affected by gravity and friction, and they must bounce off the rotating walls realistically. There should also be collisions between balls. - The material of all the balls determines that their impact bounce height will not exceed the radius of the heptagon, but higher than ball radius. - All balls rotate with friction, the numbers on the ball can be used to indicate the spin of the ball. - The heptagon is spinning around its center, and the speed of spinning is 360 degrees per 5 seconds. - The heptagon size should be large enough to contain all the balls. - Do not use the pygame library; implement collision detection algorithms and collision response etc. by yourself. The following Python libraries are allowed: tkinter, math, numpy, dataclasses, typing, sys. - All codes should be put in a single Python file.
Make it yours. Change "20 balls" and "a spinning heptagon" for other objects and another container, and edit the hex list after "Colors are:". Keep the line that begins "Do not use the pygame library", which makes the model write its own collision code.
Spinning heptagon test across 18 models
A grid of 18 models' answers to one strict prompt: a single Python file, no pygame, in which 20 numbered balls fall, spin, and collide inside a rotating heptagon. It is the creator's KCORES benchmark test, widely copied in 2025; the post has the full prompt.
“Due to resolution limitations, this demonstration only includes the top 16 scores from my KCORES LLM Arena.”
You'll need
- Python with tkinter and NumPy to run the script the model writes
- A screen recorder: the script draws to a window and doesn't write a video file
How it was made
Each model got the same prompt, and the creator recorded the programs side by side. The post says the grid shows the top 16 scores from the creator's KCORES LLM Arena, though 18 tiles appear; other models were tested and didn't make the cut. A comment links the full leaderboard and the benchmark repo. The model names come from the labels on the grid. The video has no sound.
Posted Apr 15, 2025 · r/LocalLLaMA on Reddit · 471 upvotes · 77 comments
Prompt from: Post body, in a code block
Look notesby Reference
A 6-by-3 grid of model outputs, each tile a heptagon outline with orange and amber numbered balls, labeled with the model's name, under a footer reading "benchmark-ball-bouncing-inside-spinning-heptagon v20250415".
- Color
- Mostly white tiles with thin black outlines, a few black tiles and one pale-blue tile, and balls in the prompt's oranges, ambers, and rust reds.
- Type
- Monospace model labels above each tile and a monospace footer crediting karminski-牙医.
- Framing
- Tiles of equal size, each with a heptagon set at its own angle. Balls pile at the bottom in most tiles, float apart in Kimi k1.5's, cluster mid-air in Gemini 2.0 Flash-Lite's, and are missing in a few.
- Structure
- One continuous side-by-side recording of all 18 programs from the moment the balls drop from the center.






























