CardGame : Preventing cheating, howto?

Hello folks,

So i’m making a cardgame like hearthstone, and wanted to know the safest place to store players deck to prevent any clients to read them. That also include a client about his own deck.

Usually PlayerState is a good place to store player’s data but from what I read Player States of every clients exist on each individual machines so it shouldn’t be the way to go to safely hide data about clients.

I was thinking about storing all decks information on the GameMode.

Any thoughts?

Thanks

I don’t quite understand why you’d want to store other player’s cards on each local machine. If it’s a networked game, your server code should know and handle all cards, not your clients. Each client should only see and store his own cards.

I never said I wanted to store other’s decks on each individual machine. It’s quite the opposite.

I don’t even want a Client to store its own deck, as someone skilled enough would be able to make a tool to read those datas.

No, what I want is to store every decks in a secure place. And as I asked, maybe the GameMode is the way to go.

I think the question you should be asking yourself is how one would cheat. Usually its easier to solve a problem when it becomes a problem, so can you reproduce this cheating scenario?

Reading the memory is not an easy task to anyone, but it’s doable. Anti-Cheat procedures exist for that very reason.

Planning is always a better solution.