In order to succeed, agents playing games must reason about the mechanics of the game, the strategies of other agents, other agents’ reasoning about their strategies, and the rationality of agents. This paper presents a compact, natural and highly expressive language for reasoning about the beliefs and rationality of agents’ decision-making processes in games. It extends a previous version of the language in a number of important ways. Agents can reason directly about the rationality of other agents; agents’ beliefs are allowed to conflict with one another, including situations in which these beliefs form a cyclic structure; agents’ play can deviate from the normative game theoretic solution. The paper formalizes the equilibria that holds with respect to agents’ models and behavior, and provides algorithms for computing it. It also shows that the language is strictly more expressive than that of Bayesian games. Categories and Subject Descriptors: I.2 [Computing Methodologie...