Germany won the Robot World Cup 2016 on penalties
"The reeeefereeeee's a rooooobot"
A nail-biting penalty shoot-out crowned off the finals of Robocup 2016, with a team from the University of Bremen called B-Human edging out Austin Villa from the University of Texas.
The game was jerky and awkward, with both teams shuffling slowly towards the ball. Despite several near-misses it ended goalless after two ten-minute halves.
The robots then stepped up to the penalty spot. B-Human scored all three, but Austin Villa cracked under the pressure and failed to score a single one of their shots. The final score was 3-0.
B-Human's victory will have been particularly sweet, as the team was edged out in the finals by Australia's University of New South Wales in 2015.
Standard Platform
The tournament, which took place in Leipzig and has been running for 20 years, pits teams of robots from around the world against each other in a variety of categories.
The most popular is the "Standard Platform" competition, where all participants use the same hardware - a 23-inch bot called Nao - but develop custom software for it.
That's hard, as the robot has to be aware of its own position, the pitch around it, the goal, the ball and other players. Each game is five-a-side and the pitch is six metres long.
Get the best Black Friday deals direct to your inbox, plus news, reviews, and more.
Sign up to be the first to know about unmissable Black Friday deals on top tech, plus get all your favorite TechRadar content.
The overall goal is to develop humanoid soccer-playing robots that can one day beat the FIFA world champions.
They're some way away from that for the time being. But advances in physical agility, battery technology, computer vision and autonomous systems design means that their abilities are increasing exponentially over time.
- Duncan Geere is TechRadar's science writer. Every day he finds the most interesting science news and explains why you should care. You can read more of his stories here, and you can find him on Twitter under the handle @duncangeere.