Repository navigation
Crash Course into Game Development with CGS
One of the main features of CGS is the Developer mode, which allows you to create or port your favorite Card Games and play them on CGS solo, or with friends thanks to the multiplayer features.
In the General Settings Menu of CGS, check the 'Developer Mode' option:

It's as easy as that!
To create a new game on CGS, first ensure that the Developer Mode is enabled as shown previously.
Then go back to the Main Menu and select the center card to open the Games Management Menu:

Once you do, click on the "New" button of the Games Management Menu, which will take you to the Card Game Editor Menu:

While most of the items here are self-explanatory, we would still like to add some details:
CGS uses a resolution depth of 100PPI, that means that a 100x100px card makes up a 1x1in card. Note that most graphic software use a printing standard of 300DPI. To have your cards shown correctly, a simple division of both the width and height of your card images by a factor of a 100 will do. For example, the following card is 429x600px; which will translates to 4.29x6in for CGS.

By Default, the Playmat size is 3600x3600px. Anything lower than that will stretch to fit that size. You can also change the playmat size in the cgs.json.
Once you are done creating your game, it's probably time to import your cards!
Once your game is created, it will show up in CGS with the other games. Navigate to it and select 'Explore Cards' at the bottom-left of your screen. On the next screen, you will see all of the cards you have uploaded to your game. For now, it should be empty, so go ahead and click on the + sign at the bottom-left of the screen. You should now be greeted by this:
This is of course, pretty self-explanatory. For the purpose of this tutorial, we will assume we have a few cards ready to upload. It will be easier to upload them as a set rather than one by one. It is important to note that your future players will be able to filter theirs cards by "sets" in the deck builder. For this reason, do not put random names for your sets as you will eventually use them. To group a set of cards in a 'set', put them all in the same folder; and give that folder the name you want your Set to be called. For example, if I am making a Starter Set and a 'Breaking Dawn Expansion Pack', I will create two folders named 'Starter Pack' and 'Breaking Dawn Expansion Pack" and put the necessary card images in these folder. All you have left to do now is to to import each set by uploading each folder at a time.
As a side note, the game you just created are all stored within the persistent games data directory. The location of this persistent data directory varies depending on platform. Some examples include:
- Android: /Data/Data/com.finoldigital.cardgamesim/files/games/
- Mac: ~/Library/Containers/com.finoldigital.CardGameSimulator/Data/Library/Application Support/com.finoldigital.CardGameSimulator/games
- Windows (Steam): C:\Users\{user}\AppData\LocalLow\Finol Digital LLC\Card Game Simulator\games
- Windows UWP (Microsoft Store): C:\Users\{user}\AppData\Local\Packages\FinolDigitalLLC.CardGameSimulator_499qk536pdy94\LocalState\games
You can simply share your game by sending your game folder to a friend, and having them put it in their Games Directory. Please note that you will need to do this every time you update the game, add cards etc. This method is supposed to be used for quick playtesting purposes with a playtester, or to playtest it by yourself by playing the game on two different machines simultaneously.
To help with this, it is possible to create shareable CGS ZIP files with the Games Management Menu's Share functionality. CGS will create a .cgs.zip file when you click the "Share" button for your game. If you are prompted to choose an application to open the .cgs.zip file when you click the "Share" button, you can choose your web browser and use that to save the file to your Downloads folder. You can then share this file and import it into CGS on another machine using the "Import" button.
To make it easier to publicly share your game, you can upload your .cgs.zip file to the CGS Games website.
To update your game, simply delete the game by going to your games at cgs.games/{your-username} and clicking the red X button on the top-right of the game, and then re-upload your .cgs.zip file.
Once players have gotten your game from the CGS Games website, they can sync to stay up-to-date with your game!
If you are a software developer, you may know how to upload your game files to a web server. If you do, you may set the CGS AutoUpdate Url to point to the files you have uploaded.
If you don't have access to a web server, the recommendation is to use GitHub:
- Create a new public repo for your game
- Commit all the files from
{games-directory}/{your-game}to that repo - Edit the
cgs.jsonby updating the links
If you are new to GitHub, you can get started by creating a new account at https://github.com/signup?source=login.
Once you have created an account, you can create the new repository at https://github.com/new, giving it the name of your game and setting public access.
You may find it useful to refer to a YouTube guide, and GitHub provides a beginner tutorial for How to add code to your repository: https://www.youtube.com/watch?v=g2XjJhrGGg4
For help with committing the files and editing the json, you can refer to the examples at https://github.com/finol-digital/Card-Game-Simulator/tree/main/docs/games.
Another alternative option is Google Drive. It is no longer recommended, but you can still see examples: https://drive.google.com/drive/folders/1ohvGKogjJsWp5py0p_GQs1-jdpJGZSIg
That's all you need to know to get you started on Game Creation on CGS!
For more in-depth Game Development, see the CGS Card Game Specification.