Hello, just doing some brainstorming on a TCG style game and figured I’d get some input from the community and start a discussion. So heres my though process so far.
As with most TCG games, Im working on one that is going to have multiple card types. In this case characters, equipment, items, spells, etc. Each with their own data sets that need to go with them. Now, what I am trying to figure out how I want to do is handling propagating these cards to the game. There is two obvious ways I can do this, each with their own pitfalls.
1: Build all the cards manually and save as a prefab.
2: Store all the information from these cards into a database (im thinking XML for now) and then building them at runtime.
Problems I see with both.
Building all the cards and storing as prefabs will obviously take a long time to do, and adding future cards will be more tedious then method 2. Even with this method, im still going to have to use some soft of base class and use polymorphism to build up to the actual card type.
Method two, which im probably going to go with, I deal with the issue of reading through a database, and building the cards based on type.
The next issue im running into in my thought process is dealing with all these different card types in a deck. The complications of this are better seen when you think of it in difference between normal playing cards. With normal playing cards you would simply have a deck with all the same card types, and their data types would be identical between all cards, just different values. So you can have a list of type card, and all the cards would be the same base class. Now, with a TCG game, the cards have many types, and those types have different data values and functions, and lists must be of the same class. So do you create one class that encompasses all the methods of every type of card, build all your cards into that with the data fields mostly empty because they are used for other types, or do you have a base card class, and index that points to the card that you actually want, use that and when the card is needed it builds it from the database? Input would be appreciated. Would love to see how others would do it.
*Also, how do you create tags for topics? If its not found then simply comma delimitation isnt working.