Last year Codeglue collaborated with the University of Amsterdam and ForceLabs to help develop a tool that optimizes the workflow of creating card games. Codeglue’s role was to be a workfield case study, as we used card games during the development of Spellbenders, and we would be giving industry input on the tool as it was developed by University of Amsterdam student Midas Buitink and try out various iterations in our own pipeline. The work described in this blogpost was mainly based on research done by Riemer van Rozen and Anders Bouwer, who are also part of the production of this tool. The entire production of the tool can be viewed here!
Creating games is a long process that often involves a lot of iteration, and especially on card games that can be very tedious, as you will need to keep tabs of every individual card, alter it, and then reprint it. The same goes for the ruleset which is often hard to keep track of as you are iterating on ideas.
At Codeglue our game ideas, or sometimes just separate mechanics, often start as paper prototypes in the form of card games. These card games are a simplified version of the idea, often reduced to the very core of the design, allowing us to get something playable quickly to figure out the direction. We used this method to prototype several mechanics for our game Spellbenders.
Even though creating those card games is a lot faster than building the actual game, it can still take a lot of time, and so we happily agreed to partake in the development of this tool to speed up that process, because the less time we have to spend to get to the point of testing, the more testing we can do!
Based on the research from Riemer van Rozen on formalizing card games as a script language, Midas created the prototype for the card design tool as his graduation assignment. To help Midas as much as possible and to provide a case study, we created a small card game based on Spellbenders the way we would normally do, documenting the whole process and keeping track of the time spent. Based on our process Midas would analyze where a tool could speed up the workflow the most, and from there formulate a design for the prototype tool. We found that up to 80% of our time was spent creating and editing the cards!
With that data in mind, the tool ended up taking aim at the three biggest time consumers: the creation of cards, playtesting and iteration. The idea was to split the tool up into two segments, with the first segment focussing on creating and editing cards, and the second segment focussing on setting basic game rules through designer friendly code so the game could be played.
This setup of the tool would allow the user to quickly create cards, and then through simple code create a playable version with those cards, while everything remained editable and adjustable for quick iteration!
The first version of the tool leaned heavily on the code language and iterated on how the designer would interact with code blocks to create rules and logic. This was done separately from the card creation to allow for faster creation of the tool. During tests of the code language Midas used recreating the popular game of UNO within the tool as a proof of concept.
While this coding language had great potential and shows a promising future, it did turn out to become too big of a task to integrate it fully along side the card editor, so Midas decided to sever the two and create two separate tools for this proof of concept and start creating the tool that would allow for quick creation and iteration of game cards!
With the card creation tool no longer tied to the codeable part of the tool, it quickly became a streamlined program to create sets of cards. The final product cleverly uses a template approach to set up the overall ‘types’ of cards, generalizing the information types that can be on a card.
The idea behind this template approach is that a lot of cards in card games are generally the same card, just with different values. As an example, the popular card game “Magic the Gathering” has hundreds of monster cards in the game, but in a sense these are all the same card, just with different statistics!
By using a template the user can rapidly create unique cards that use the same general information and layout, but with unique values. This vastly improves initial card creation time, and makes iteration a breeze!
Making sweeping choices, as is often the case in the early stages of prototyping, can easily be done by adjusting the template itself, adding and removing complete features which updates across all cards that share that template automatically, while tweaking unique cards can also quickly be done by adjusting the unique values of that card itself.
The tool also has the ability to quickly create printable sheets of the cards, laying the cards out in printable sheets for easy batch printing and cutting.
Codeglue only contributed a small part to this project, but it was exciting to be a part of the prototype Card Game Tool and see where it can help improve the pipeline. Midas analyzed Codeglue’s way of working and tried to make a tool that would work for a broad spectrum of designs, and we could not be happier with our participation on the project. We are also still iterating a bit on the card game we created for this project, so keep an eye out on our socials for updates on that!
Codeglue also partook in the online workshop about Card Game Design tools, organized by the DGA Gaming Fieldlab, to share the tool and it’s potential to all interested parties, and look ahead to what the future for this tool might hold!
If you would like to try out the tool yourself, you can find it at this website. Please give it a try, it is free and could very well help you save some time 🙂
The results of this research contribute to the objectives of the Knowledge and Innovation Agenda 2018-2021 (de Waal et al., 2018), in particular the theme “Value creation: new design capabilities”. Codeglue is excited to see how the prototype improved and to use it in the development of card games.
Would you like to stay up to date and follow our development updates, please check out Codeglue on your platform of choice!