added singlePlayer