Ok, the keyword "empty methods" is very a bad choice. It does not mean "hide methods that are empty", it does mean : "in classes, hide areas that are supposed to contains methods, if this area is empty because the class has no methods".
Actually, "empty methods" makes only sense when used with classes that have fields and methods (like on regular programmation language : C++/Java/Php/C##), something like:
@startuml
class agent {
int field
}
@enduml
@startuml
hide empty methods
class agent {
int field
}
@enduml


PlantUML detects parenthesis to infer what is a field and what is a method.
In your example (call Advanced class body http://plantuml.com/classes.html#Body ) , you define your own areas with separators, so the "hide empty method" has no sense, and we should have ignored it. Somehow, this is a bug that we are going to fix.
Hope that things are more clear!