I have/had similar problems with lookForAt. Strangely, it does seem to work when using the different method header.
room.lookForAt('creep', 10, 10) <- does not return the correct information
room.lookForAt('creep', room.getPositionAt(10,10)) <- seems to returns the creep correctly...