A downloadable asset pack for Windows and macOS

Buy Now$2.99 USD or more

A Simple Card Game Engine made in GMS2.

All the cards stats are stored in a JSON .txt file that you can freely modify to make your own battle card game.

The whole code is fully commented, ready to be studied with ease.

StatusReleased
CategoryAssets
Rating
Rated 5.0 out of 5 stars
(2 total ratings)
AuthorAlexDer
GenreCard Game
Made withGameMaker
Tagsasset, card, GameMaker, gml, gms, gms2

Purchase

Buy Now$2.99 USD or more

In order to download this asset pack you must purchase it at or above the minimum price of $2.99 USD. You will get access to the following files:

Card Game Asset.zip 103 kB

Download demo

Download
CardGameAssetDemo.zip 4 MB
Download
Card Game Asset Demo.zip 1 MB

Comments

Log in with itch.io to leave a comment.

(1 edit) (+1)

Hi! Love this engine you made. Thinking about making a simple card game and I'm curious on how youd make the json not human readable, for protection. Also almost the same question but what about saving the game.

(+1)

Hi hogtrick, thank you for the feedback! That would be quite hard because that means you need to encrypt your Json file and decrypt it as you parse it in GMS2. For saving the game you can follow many tutorials on YouTube, especially the ones who use buffers.

Here’s a good one: https://youtu.be/QmxQb1BFQRE

(+1)

Thank you for the reply. I think I found a solution for my case in particular that add just enough protection from curious players. Zipping the text file and changing the extension, then unzipping and renaming at runtime, also everything would be done in appdata folder and not the game folder, I think its good enough.

(+1)

Thank you, This is a great asset! I was wondering how you would go about changing this to button controls? I made it so you press a to select the card but not sure how to go about a cycling left and right pressed button option. 

Hi! Thank you for purchasing the asset! Well, the easiest way it comes to my mind right now is to have a hand[] array (or ds_list) which stores the instance IDs of the cards being drawn, and a index counter variable. So that when you press the button “>” the index variable increases by one and when you press the “<“ it decreases.

Then when you want to play a card (“A” being pressed) you check which card is currently selected by retrieving the ID from hand[index].

Let me know if that can help you.

(+1)

Hi, thanks for the upload. I am a bit new to using assets, how do I open the project in GMS2?

(1 edit)

Hi Woes, thank you for purchasing the asset. You just have to click Open on the main menu of GMS2 and select the .yyp project file.


Hi Alex, thanks for the reply. After unzipping the card game asset.zip, I can't find the .yyp project file. Am I looking in the wrong place?

Hi Woes! The .zip file changed for some reason, so you downloaded the wrong one (an HMTL5 version of it). Now I've fixed it.

Send me your email and I will send you the correct one so that you do not have to purchase it again.

(+1)

Hi! I just downloaded the .zip file again and it's now correct. Thanks for solving it so quickly. 

Can't wait to dive in! :)

(+1)

Bought this to compare notes and I am deeply impressed with the work you put into it. I have been trying to figure out how to make a room where you can customize your own deck, but not too sure how to organize such a project. Any ideas?

(1 edit) (+1)

Hi FoxFX! Thank you for purchasing the project.

You could achieve that by making an object which stores the list of the IDs of the cards you have in a ds_list (myCards). The you can create another ds_list called myDeck and through that object you can move the cards IDs from the myCards list to the myDeck list.

Remember to always use cards IDs in the lists and not the card instance IDs or whatever.

For example, this is what the lists should look like:

myCards = ["001", "002", "003", "005", "007", "010", "024", ...]

myDeck = ["001", "005", "007", "010", ...]

(+1)

I'll try this out and see if I can present my results. Once again, thanks for this project engine. I have been following tutorials on card games through uheartbeast's older tutorials and have been slowly progressing a few things for a friend who wanted to learn how to make one card game himself.

Will be back to share.

(+1)

i'd just do a dslist for your card collection, dupe it on room, sort it, then loop through it deleting the 0th item after creating a card, or adding to the number variable of the card if you have it created already.
then just remember to have your battles also use a duped ds list, in case your game creates new copies of cards to include