For two-player games of perfect information such as Checker, Chess, Go, etc., we introduce ``uniqueness'' properties. For any game position, we say roughly that it has a uniqueness property (or, a unique solution property) if a winning strategy (if it exists) is forced to be unique. Depending on the way that winning strategy is forced, a uniqueness property is classified as (bi-)weak, (bi-)strong, and global. We prove that any reasonable two-player game G is extended to a game $\Gext$ in such a way that any original position of G has the bi-strong uniqueness property. For the global uniqueness property, we introduce a simple game over Boolean formulas with the global uniqueness property, and prove that any reasonable two-player game with the global uniqueness property can be converted to a subgame of this game. Based on these results, we give a new characterization to some standard complexity classes such as PSPACE and EXP.