Hierarchical state machine
A state machine whose states can contain their own substates, so shared behaviour is written once in the parent.
A flat FSM for a game character runs into trouble quickly: "idle", "run" and "crouch" all need to be able to jump, and that same transition has to be wired from every one of them. In a hierarchical machine the three sit inside a parent state, "grounded", which alone owns the transition to "airborne". A substate that doesn't handle an event passes it up to its parent — much like inheritance in object-oriented code.
The idea comes from David Harel's statecharts (1987), devised to describe avionics for fighter jets without the diagrams exploding. Game developers picked it up once flat machines and the state pattern stopped scaling — and often abandoned it in turn for behavior trees when the hierarchy itself grew too deep.