Well, I found the difference. For some reason, the $multicheck global is undefined when endmulti() calls it from logspecial.php. This was causing the switch statement in endmulti() (which identifies the type of multikill and credits it to a player) to never get run.
This is probably a PHP ...