Honestly speed being their weakness is probably the most straightforward and logical answers. You probably hit the nail right on the head tbh
The major difference between flame on and flame off like zoro says is
- While its on they’re pretty much invincible and can’t get hurt
- While it’s off they sacrifice that defensive ability for more speed
Also while being essentially invincible and immune to damage is cool there are definitely ways to stop/beat characters like that. Even if they stay in their flame mode they can still be restrained
It also makes more sense as to how the lunarian were wiped out. It really most likely came to the world government trying to capture them. With the lunarian being forced to decide to either turn off their flames in hopes of escaping or leaving it on to avoid damage but risk getting caught.
The ones that tried to run most likely died without their flames to protect them. The ones that got captured probably died because they eventually turned it off. They’d probably rather die than being used as the world government test subjects and play things.
When it comes to why king didn’t decide to keep blocking with his flame till zoro passed out it most likely came down to his pride/ego. The same exact reason a lot of one piece villains end up falling.
Zoro basically called king a scared for using his flame to block his attacks on top of calling him out on only pretending his attacks weren’t hurting. While yeah it logically wasn’t the best thing for king to give into the taunting his pride would have been damaged if he didn’t try and prove Zoro wrong.
So instead of just staying in flame mode waiting for zoro to pass out instead he goes on the offensive. He turns off his flame and tries to beat him with overwhelming force aka his strongest attack. While also keeping a distance between them to make it even more difficult. Zoro was able to get past his attack and defeat him either way