Once the modulus operator is overloaded using the operator%() method, you will always get a division by zero exception.
Code Snippet (if applicable) to Reproduce Problem:
foo/proc/operator%(a)
mob/Login()
..()
var/foo
F = new
G = new
world << (F % G)
Expected Results:
The operator functions as specified by the overloaded method.
Actual Results:
A division by zero exception occurs.
Workarounds:
Using the assignment version of the operator seems to work fine, but this isn't a great workaround.