Type object
Een patroon dat een “type” als data in een object vastlegt in plaats van als subklasse, zodat tijdens runtime nieuwe soorten kunnen ontstaan zonder nieuwe code.
In plaats van één klasse per monsterras (Goblin, Troll, Dragon) verwijst elk monster naar een type object met de gedeelde eigenschappen (gezondheid, aanval, sprite). Een nieuw ras toevoegen wordt dan een data-invoer in plaats van een hercompilatie. Het patroon is beschreven in Game Programming Patterns en vormt de ruggengraat van datagedreven ontwerp en van moddebare games.
De verwantschap met de flyweight is duidelijk: veel instanties delen één gemeenschappelijk, onveranderlijk type object in plaats van elk een eigen kopie van dezelfde gegevens mee te dragen.