A suggestion someone made elsewhere that I really liked was to make failed perceptionchecks invisible.