hello . is it possible to make a ccg game with non knowledge of coding or programmer using this tool ? please
tha
another question : can add graphic for board and cards ? and thank you very much
Definitely! All the visual aspects of the toolkit can be modified with your own artwork and designs.
- Card images, borders, and card backs can all be uniquely specified in the data table.
- The board layout can be easily modified in the viewport with as many or as little card placement fields as you would like.
Hey.
In the Card Set data table, under Deck Settings there is a boolean called AddToPlayerDeck. How would I use this bool to exclude cards from appearing in the deck builder?
Cheers
Shooooouuulllld be pretty simple. For these kinds of things I would add it to the “Validate Card Through Filter” function in the ArrayFilters_FunctionLibrary. This filter is used by the deck builder so it should just work after this change:
Let me know if you hit any issues.
Are you planning any further updates?
Hey Cmcginn, at the moment there are no planned feature updates for the toolkit, but there will continue to be smaller compatibility updates and bug fixes if needed for each engine release.
In saying this, support is still ongoing, so feel free to reach out for any features you may be looking to add and I can help push you in the right direction.
Thank You for the quick reply.
Hi there
I am strongly considering getting CCG Toolkit, which looks awsome! however, I must ask a few questions first.
Explanation
I have been looking for some time for a completely new way to handle crafting, and minigames have always been my aim. Now i’m thinking that for smithing, tailoring and carpentry, a card game system would give infinite possibilities.
The NPC
The NPC the player or players would be playing against would actually be the item being created, and the NPC’s cards represent the problems that might arise during the crafting process.
As you can see, there would thus always be 1 NPC opponent,
It would be a nice, though not necessary, to have multiple players be able to go up against that single NPC, but not each other.
Requirements
- CCG Toolkit must be able to exist as a minigame within a larger game.
- Different decks for different types of task, (smithing, tailoring, carpentry, etc). or at least the ability restrict the player’s deck to (task) relevant cards.
- The ability for new cards to be added as an adventure reward and show up among the players choosable cards.
- The ability to have the NPC decks specific to the task and to the item being created.
- The NPC’s life would represent the difficulty to create the item.
- The ability to have the remaining life of the player, become the finished quality of the item.
Wish List
- The abilty for a success or failiur of a game to use up player resources.
- The ability for for the use of certain cards to use up items within the players inventory. (eg. sand, polishing solution, etc.)
If its all blueprints I suppose I must be possible to do this, but I may need to ask how via email at some point
Please could you advise
Thanks in advance for any help and advice you can give.
Hey chierfarchon,
I cant see any specific questions, so ill just give some general details on your points.
The NPC
The toolkit comes with a Simple (Although the backend is anything but…) and customisable AI.
Requirements
- The toolkit has been created and is setup as a standalone project. There are a lot of components that require a lot of blueprint code in different places to successfully achieve solid and customisable framework, but it would not be impossible to strip this down to be a simpler system. The multiplayer aspects of the toolkit adds a lot of extra nodes and ways to handle client and serverside events/functions, so if you want to go down the multiplayer route then I would suggest looking into this and see if this is still something you want to use as a “minigame”. In saying all of this, you can leave the toolkit as is, and when the minigame is triggered, it changes the to the arena (with the Card Game Mode still setup) and you should be good to go, but if you want this to be seamless in the world, then you will have some additional work ahead to optimise and move blueprints around to handle this.
- You can create decks ingame and pre-built decks via the editor.
- You should be able to save a list of card names that you pickup along the way, then have the toolkit use this to create decks or available cards.
- AI have a level of customisation which allows you to specify personalities, so setting a specific deck is possible as long as you use the right personality when spawning the AI
- The game mode currently handles the initial health for all players, so this is possible.
- This is more on setting up your own gameplay to do this but your remaining health could be saved out and used when adding the item the players inventory
Wish List
- It would definitely be possible. The tricky part here would be setting up removing resources as they play.
- You could easily setup an ability which you can add to cards which removes certain items from the players inventory.
Correcto! All blueprints. So you should be able to set this up using the toolkit, the difficulty is up to you on how much of the framework you would like to change
Anyway, feel free to reach out if you have any additional questions.
Thank you, you have given me a lot to think about. I seems that my biggest and first hurdle is to try to make this integrate inside another game.
Again Thanks
Hello, I have a problem, when I try to join a game it makes me a mistake:“Failed to Join Game Session”. So impossible for me to join a LAN or Dedicated server game .
Sincerely, SMOLIGE.
Hey SMOLIGE,
Unfortunate issue, so to get the ball rolling I have few of questions:
- Have you modified the toolkit in anyway? If so, does this occur on a clean toolkit project?
- Verifying, you trying to connect 2 clients on the same machine?
- Are you using any online subsystems? (E.g. Steam - requires 2 separate clients and accounts for this to work)
- Is it possible the firewall on the machines could be blocking the connection between the clients?
Let me know.
Hi Proto… AMAZING FORUM HERE… You really work hard to make things easy for us.
I have just gone through the whole 21 pages and saved a bunch of screen shots for later reference. Even after doing this I have a few questions for you. They should be pretty simple ones and I am probably just super lame at coding with UE4. I have some ideas for the logic behind solutions, but figured there may already be some features in place that I am just missing out on understanding.
Okay… so here goes.
-
First question is an easy one. In post #250 you showed an awesome node set for setting up Hearthstone style damage. I gave this a crack and still can’t get them to damage correctly. What needs to be connected where to make this work. (Screenshot 1 inbound) I did try to connect the return value to the damage health input but that damaged the attacker with their own attack value.
-
This is sort of a branched question. I want to have my decks based around factions similar to magic colours/hearthstone classes. You have a classes enum set up already and I have played with that but it lets me build decks willy nilly. 2a)How would i go about restricting decks so that they can include ONLY cards from one class AND a nuetral class?
2b) If I instead used a Mana system to gate this, by creating multiple mana pools that are paid into by playing a card, where would I find mana as a variable to duplicate and clone? What other parts of the framework would I need to make sure i setup to make this work.
2c) Feel free to answer whichever of the above is an easier solution and ignore the other one. -
I followed the tutorial to make the Increase HP to all cards and it worked great. What is the easiest way to now make that ability ONLY increase a single cards HP?
-
I noticed there are damage types already set up within the framework but they do nothing. Is it possible to create a Stun Damage effect that prevents a card from being activated on the opponents next turn? If so how?
Thank you SO much for all your help already through these forums, through making these awesome frameworks for us to use and for the no doubt amazing help you are likely to pass on to me when you see this.
With all of these solutions (plus finding a way to do multiplayer) my ccg will pretty much be sorted. So Massive thanks to your most awesome self.
PS: - Also, I sent an email offering to pay for your time to make a video tutorial on how to set up a basic multiplayer for me and my buddy who lives in Jamaica. Definitely keen to pay you for that if you are interested and no doubt many here would be keen to see it. CASH MONEY BRO! let me know.
Hey Arjade!
-
So the node that is connected the Damage Health input should also be duplicated and the card it checks will be the opposite to. Basically this just returns the current damage value of the card its checking against.
-
In the Deck builder I would create a new variable for “Deck Type” which is set when adding the first card to the deck (If deck length = 0, set the deck type to be whats currently selected). then every card after this you can simply check to see if its off the same type OR the neutral type. If it is, continue adding the card to the deck, if not return without adding the card and give a user message so they know why the card wasn’t added. This would be the easiest solution, you can go down the road of selecting the deck prior but this would be a lot more complicated to setup.
-
There is, instead of looping through all cards you can select one of the card from the array (At random, At index, Based on the card name, lowest health card on the board, etc), If you want to select the card you want to increase the health for this is where it can get a little more complex. You will need to modify the player controller to set a reference for the card you want to the ability to use. How and where this is done will come down to what type of input will be used to set this card.
-
Damage types are more setup to be accessed but damage is the same for all cards out of the box. To set up a stunned damage, you can add a “StunnedForTurns” int (or bool if you know this will only last for X number of turns) variable in your card. When stun damage is applied, in the ability you can set this to be for the number of turns you want it to last for. In the “Deal Damage to Card” function you can then check to see if the card is stunned (StunnedForTurns <= 0 ), and continue the interaction, if not then you can return without dealing any damage/interaction. At the end of the players next turn you can decrease this by 1. This is similarly setup to the cards “Lifetime”.
You received a reply to your email a few days ago (darn forums didn’t notify of this comment in time), Definitely let me know if you have any other questions.
Awesome. Thanks again Proto. You are a Legend!
-
If I want to allow online play, will my players need to do their own port forwarding / server setup? Can’t I host my own server to spare others this effort?
-
After I’ve finished my game, how do I distribute copies to others?
Hey AbramelinTheMage,
- UE4 does supports dedicated servers. You will need to grab the GitHub engine source to compile your own dedicated server and set this up for your project.
- UE4 allows you to compile binaries for a wide range of platforms, so you can choose your platform and either zip up the build folder and make the folder downloadable, or choose a suiting distribution platform (steam, app store, etc) for your game.
Hi, how easy is it to implement a card based mana system like MTG? Thanks.
Hey risu239,
The difficulty will mostly come down to your knowledge with Unreal and its inner workings. The Toolkit comes with a basic mana framework which you can use as a base to add additional functionality to meet your needs, including a MTG system like you have mentioned.
Feel free to reach out to the support email for more tailored details on what your after and we can discuss this in more detail.