Game Design Patterns for Collaborative Player Interactions