A perfect GM is one that doesn't ever involve their emotional issues or IRL problems and bad personality traits into their GM duties. You want one that is mature or older than usual, experienced with FlyFF and the way the game is played. The GM should also have a background check, make sure they aren't dedicated to other servers since some can easily backstab you. A perfect GM also has restricted ingame abilities and will never be able to spawn items or attack monsters/players.
GM's also have to be able to take insults. If somebody yells "STUPID ***** ***** YOUR MOM IS A ****** **** YOU", instead of flaming back, raging at them, etc., they should follow the servers rules and administer whatever punishment is offered for insulting a staff member. The GM should NEVER experience any form of rage, sadness, etc when being insulted by a player. GM's should also never be biased or take bribes. They should be as literate as possible in their own language and others if needed.
They should usually agree with server changes that are good for the community and have extreme patience to help others ingame with issues without showing a single sign of annoyance or impatience. They must have strengths in patience and tolerance or they will fail at their job. They should NEVER drink on the job. Yes, if they're drinking while ingame on their GM, that should not be allowed. I've witnessed this happen on many occasions and it creates the worst environment for players. Always question your GM's and log their work time as well as actions heavily, ingame and out of game.
There is a lot more to it, but following most basics can bring the best Game Masters to your server.