Developing script languages to define card games

OData support
Supervisor:
Dr. Mezei Gergely
Department of Automation and Applied Informatics

Following the worldwide success of the first collectible card game (Magic: The Gathering, Wizards of the Coast, 1993) numerous similar games have been released. Despite all the differences between any two of these, the core concepts and methods have barely changed.

The goal of this paper is to find these common features and provide a system based on the domain-specific language of CCG which anyone can design enjoyable games with. To this end, I introduce a new group of languages, its members’ function is to help translating the established customs to the digital platform in a cooperative manner. All the languages are text-based and there are both declarative (to define games or list available cards for a set) and imperative (to implement custom actions and rules) among them.

In order to secure maintainability of the subject, several restrictive decisions had to be made. All games require exactly two players and they have to follow a cyclic workflow (turn-based games with predetermined phases).

The paper starts with a short detour regarding the history of CCGs, followed by the introduction of the core elements of CCG gameplay. Afterwards, an analysis of all conceivable processes follows. Next, the group and its members are detailed along with their interactive relationships. The final part describes an exemplary new game to demonstrate the working system.

Downloads

Please sign in to download the files of this thesis.