Serious games open up many new opportunities for complex skills learning in higher education. The inherent complexity of such games though, requires large efforts for their development. This paper presents a framework for serious game design, which aims to reduce the design complexity at both conceptual, technical and practical levels. The approach focuses on a relevant subset of serious games, labelled scenario-based games. At the conceptual level it identifies the basic elements that make up the static game configuration; it also describes the game dynamics, i.e. the state changes of the various game components in the course of time. At the technical level it presents a basic system architecture, which comprises various building tools. Various building tools will be explained and illustrated with technical implementations that are part of the Emergo toolkit for scenario-based game development. At the practical level, a set of design principles are presented for controlling and reducing game design complexity. The principles cover the topics of game structure, feedback and game representation, respectively. Practical application of the framework and the associated toolkit is briefly reported and evaluated.