What is morality? How many moral values are there? And what are they? According to the theory of morality-as-cooperation, morality is a collection of biological and cultural solutions to the problems of cooperation recurrent in human social life. This theory predicts that there will be as many different types of morality as there are different types of cooperation. Previous research, drawing on evolutionary game theory, has identified at least seven different types of cooperation, and used them to explain seven different types of morality: family values, group loyalty, reciprocity, heroism, deference, fairness and property rights. Here we explore the conjecture that these simple moral ‘elements’ combine to form a much larger number of more complex moral ‘molecules’, and that as such morality is a combinatorial system. For each combination of two elements, we hypothesise a candidate moral molecule, and successfully locate an example of it in the professional and popular literature. These molecules include: fraternity, blood revenge, family pride, filial piety, gavelkind, primogeniture, friendship, patriotism, tribute, diplomacy, common ownership, honour, confession, turn taking, restitution, modesty, mercy, munificence, arbitration, mendicancy, and queuing. These findings indicate that morality – like many other physical, biological, psychological and cultural systems – is indeed a combinatorial system. Thus morality-as-cooperation provides a principled and powerful theory, that explains why there are many moral values, and successfully predicts what they will be; and it generates a systematic framework that has the potential to explain all moral ideas, possible and actual. Pursuing the many implications of this theory will help to place the study of morality on a more secure scientific footing.