CCG Toolkit | Multiplayer Card Game Framework

Hi there, I purchased this today and didn’t find any posts about this so I’ll ask. Is there anyway to make a card have two separate values for attack and defense? sort of like yugi-oh?

So I was sent this As for game mode and most state I guess the turn based one will be more relevant as it has the turn and grid/hex movement logic. the CCG toolkit - all you need out of it is interface and widgets (user interface). Making a game like in first video would take 2-4 weeks, if you have all the art assets done. To quick sum up your questions 1. use majority of turn based kit, and jsut work with widgets on the second. 2. learn "drag and drop" for user interface. it can triger events and do basically anything. 3. you need an ability system that is editable and easy to understand. that can spawn stuff, deal damage, query collisions etc. i can say that ABLE is a good choice. 4. working with ui very much resembles working with HTML. it's pretty tough to learn fast for non-web developer. Hope that helps a little at least.

So if anyone else here has used the advance turned base toolkit and intergrated it with CCGtoolkit let me know, or if anyone know’s where in the turned base tool kit I would need to go to do this please do not hesitate to answer I’ll take any help I currently can get.

#1 I need to integrate both kits first.
#2 I need to make it so when I pick a card it turns my mouse into an action event like use spell and lights up targets spell can be used on, on the board.
#3 I need to make it so when I pick a card if be monster I can summon it to the field. I want to click on the card then click on the field.
#4 I need to understand how to change the UI.

I just want to make a tactical card game like Duelyst / shardbound / Labyrinth.

Hi again! I still explore your toolkit and got something to ask. My project requires funtionality for a less straightforward gameplay. I need to add some abilities that allow or require players to make some choice during opponent’s turn. For example a spell that discards a card in opponent’s hand on his choise or the opponent just choose some number (mana cost). So the game pauses for me and begins some kind of local turn for opponent to make his choise. Any hints how could this be implemented?

Should I write on support mail with such questions?

How do I add this to an existing project?

Hey Str8studios,

Some of the example stats such as Health and Attack names can be changed to be this. If you want to add additional stats, you will need to modify the card struct and the blueprints/widgets to display and use these values where you want them to be.

You should have received a reply to your email :slight_smile:

For those who are also curious, it was suggested that creating a state machine to handle player states and triggering events would be one of the best approaches.

Hey GamingByNumbers,

The toolkit has been created as a standalone project. If you want to migrate this, I would suggest simply creating a new project, navigating to the project folder and copying the contents folder into your existing project. There will need to be some additional setup, but if you get stuck this feel free to reach out to the support email and I can give some direction on any issues.

I’m sure you have answered this question before, but how would I go about adding grid based movement into this toolkit. Such that, after playing a card onto the field, I have the option to move that card to an adjacent space on the next turn, so on and so forth? Thank you so much for any help you can offer :slight_smile:

You smashed this! Great asset, clean BPs, management tools and multiplayer support. AAA , 5stars and um can I send you a beer?

Hey AKA Spider, Apologies for the delay (No longer receiving emails when a post is made :frowning: )

Grid based movement wasn’t intended In the design but its definitely possible with a few tweaks. The Card placements have a X and Y board position you can manually set and use, OR you can use the Placement Left, Placement Right variables to set these. If your going to move single spaces this should be fine to use, but if your after multi-grid movement, then you will likely need to create a custom manager to handle the board and card movement/positioning. There are a few useful setups for some example abilities which handle moving and spawning cards, getting references to other placements etc you can checkout if that also helps.

Feel free to reach out to the support email If you would like to discuss more details!

Booya! I think you already have :wink:

Hi again. Suddenly I realised that mouse input is not fully realised for playing cards from hand. By default the flag “Use mouse for touch” was checked. But when I uncheck it, I cant play cards by dragging with mouse, even in your untouched project. Just wanted to make sure maybe I do something wrong and cards should be played with mouse somehow else

By default, “Use Mouse for Touch” is enabled to support both mobile and desktop clients off the same project. There are definitely ways to get this working using only the mouse, but there are a bunch of small changes that need to be made in the Card Game Player Controller and the Card Widget. .

As an overview, in the Player Controller you will need to add new input events and modify existing helper functions to have the cursor position update the card position on the board when dragging. Some UE4 functions are not calculated during widget drag-drop events, which will cause you some issues when getting things working.

As for the Card Widget, best thing would be to move any touch events into their corresponding mouse events in the widgets so they are triggered properly and send the correct calls to the controller at the right time.

This can be a bit of a pain to step through If your unfamiliar where things are, so feel free to reach out via email if you would like some direction on where and how this can be done.

Hello there! Thank you for this awesome toolkit!

I was just wondering if they was an easy way to instantly play a card’s ability from the hand (without placing it on the board, like a magic spell), because I tried some changement in the Card Placement blueprint without great success. In addition, I would like to link the selection red arrow when this type of cards are played from the hand!

**Edit, to put it simply I try to : **

  1. Attack directly from the hand
  2. Use directly ability from the hand with the red selection arrow

For 2, I created a trigger “on attack”, so the ability is triggered when the card attacks with the red arrow. That’s not perfect, but the illusion works.

Thank you in advance if you have some ideas

Hello,

I am trying to get this running on an iOS device. I get an error

“OpenGL Not Supported, You must have a Metal compatible iOS or tvOS device with iOS 8 or later to launch this app.”

Apologies if this has been covered elsewhere…

I suspect there is a problem in the way I created the project but any help appreciated!

Hello,
Great Job on the CCG Toolkit i have an issue i need help with i have added some more types to the card type enum like mage knight ect but when i select them i am unable to place the card on the board when i make them a creature again they work fine any idea on how i can fix this ? also i would like to be able to display the class on the card im trying to work it out on the 3dcard blue print but i have had no luck could you please help me this as well ?
thank you

Hey Ikky Fenghuang,

Out of the box, cards will need to be played onto the board to have any effect, but to get this working directly from the hand you would need to modify some of the conditions and checks in the Player controller that check to see if there is a valid placement or not. Ultimately you should be able to use a switch based on the card type to call and play the card either on the board or have it trigger directly from the hand. How to go about this will come down to your implementation and other design decisions that will change how this is seen by the player.

For the red arrow, this is a simple BP that should be easily tied to this action once you have the foundations set with the above changes.

Feel free to reach out to the support email if you would like to talk more about the changes.

Hey Bytecrew,

This would be due to the build/project settings.

OpenGL is slowly being deprecated from the engine and Metal is essentially taking over for apple devices. If you are running on one of the more recent IOS devices with IOS 9.0 or more then you should be able to deploy from UE4.19.

Be sure to check the DefaultEngine.ini and see that the IOSRuntimeSettings have *bSupportsMetal=True

IOSSettings.jpg*

Hey Deftones4,

This is likely due to the supported card types on the placement. You can easily go into the placement BP and add your new card type/types to the array and it should work allow you to place the card on the board.

As for displaying the class type on the card. You are on the right track. For the 3D Card Blueprint, you will need to add a text component to the card, then have this set in the “Set Card Data” function.

Hope this helps!

@thanks for the help, confirming I now have the basic setup running on iPad and iPhone :smiley:

[QUOTE="

Hey Deftones4,

This is likely due to the supported card types on the placement. You can easily go into the placement BP and add your new card type/types to the array and it should work allow you to place the card on the board.

As for displaying the class type on the card. You are on the right track. For the 3D Card Blueprint, you will need to add a text component to the card, then have this set in the “Set Card Data” function.

Hope this helps!
[/QUOTE]

I have added to the array and it still will not let me place the card on the board also how would i get the cards on the board to glow green as well like they do in your hand ?

sorry to ask but can you explain how you did the first step " unhides my taunt visual feedback "

Are you able to show how you did this im a little lost cheers

Hey Deftones,

If you do not see a notification popup on the screen for “Not enough mana” when playing cards, this will could be for two reasons, the placement doesn’t support the card type, or the owning player ID doesn’t match the current player. If you can share some screenshots of your changes for the placement, I may be able to narrow down why cards may not be getting placed on the board.

Feel free to reach out the support email for your questions. I am not receiving notifications here so there may be some delays at times for responses.

Hello all does any one know how to change the card halo based on rarity ? e.g common white rare blue ext ect cheers