Human-agent teamwork in collaborative virtual environments