Shows a 2×2 strategy profile payoff matrix. A moving selection box represents the current strategy profile s=(s1,s2). Animated best-response arrows illustrate unilateral deviations: first Player 1’s best response to s−1, then Player 2’s best response to s−2. When both arrows point back to the selected cell, the panel confirms the Nash equilibrium condition (no profitable unilateral deviation) using the best-response inequalities.
Pure Canvas2D. Uses a 4-scene loop (~4s) with ease() for smooth transitions. Best responses are computed from the payoff matrix each frame; arrows and selection are grid-snapped for a blocky aesthetic. Responsive scaling via scale=Math.min(w,h)/baseSize.