Ceci n'est pas vraiment un moteur 2d.
Je dirai 2d iso (si sa existe)
Mais enfait ton moteur se traduit tout simplement a la construction d'un jeux mais qui poura être paramétrable et graphiquement changeable.
Pour ce faire, étudie déja comment est faite cette source.
Ensuite tu devrai te servir de fonction, de variable qui seront paramétrable au début et surtout de pas faire de cas exclusif au jeux que tu realise, c'est a dire pas de valeur fixe.
C'est surtout dans le raisonement que c'est le plus dur.
Après cela dépend, quel type de moteur précisement veut tu réaliser.