TCG Engine – Online Card Game


TCG Engine is a complete template to create online card games in Unity. It supports both solo play and multiplayer on a dedicated authoritative server.


by Indie Marc


★★★★★ star rating
Price History +

Online Card Game Template for Unity


Features

-Card game gameplay (Play, Attack, Mana, HP, Abilities)

-Solo and Multiplayer

-Desktop and Mobile controls

-User Login and User Database (Web API)

-Dedicated Authoritative Game Server

-Simple Matchmaking

-Card Collection, Pack Opening, In-Game Currency

-Leaderboard and Friend list

-AI made with Minimax algorithm

-Customizable Card Abilities


Structure

There are 3 main app instances:

-Game Client (Unity)

-Game Server (Unity)

-Optional Web API (NodeJS and MongoDB)


Networking Framework

Tcg Engine uses Netcode for Gameobjects, the official Unity Networking framework.


Why TCG Engine over similar assets?

-Tons of extra features (AI, Pack open, User Login, ELO ranking...)

-Cards and Abilities use Scriptable Objects

-Multiple games can run on a single server process

-Run the game in Unity directly from any scene (faster testing)

-Client and Game Server use the same Unity Project

-Game logic uses the same code for: Solo, Multiplayer and AI predictions

-UI and Visuals code is well separated from the core rules and effects code.

-Using the official Unity Networking: Netcode (no 3rd party asset required)

-Secured web api for login uses https and jwt

-Author of this asset has published several card games for various clients

-Fast and accessible support on Discord


Current Limitations

-Limited to one or two players per match only

-WebGL build requires 3rd party integration for Netcode to work

-No gamepad support


*Audio from the trailer not included in the asset.


Coding

This is not a no-coding asset. And while cards and abilities can be edited directly from the data files (scriptable objects), you will need to edit the code to add features or change the core game rules. I made the decision to not include any custom editor GUI to keep the code as simple as possible and useable for a varied level of programming skills. I put a high priority on keeping the code clean and well structured. We have a Discord community for people to help each other if you are just starting with coding. And I will be glad to listen to any feedback to improve the code in future versions if needed. More info in the doc.



Documentation

Online Doc


Tutorials

Youtube


Support & Community

Discord


Games made with this engine

Echo of Ayllu