TCG ONE is a community-supported project where we accept contributions in different forms. This post aims to enlighten the modules of the project and how to help out.
Contribution Methods
For Programmers (Software Developers / Engineers)
We are always on the lookout of new developers for TCG ONE to help implementing new sets and cards. High proficiency in Java programming language and its ecosystem is required.
You are encouraged to contribute to “contrib” repo which holds public card implementations. Please check out the README and WIKI pages of that repository first. You may implement missing expansions and fix the bugs on existing cards. Check out below section on testing and bug reports.
Learning how to use TCG ONE engine is a steep but rewarding process. Once you merge several PRs, you’ll get the gist of how TCG ONE engine works, and if your contributions are of high-quality, you will get an invite become a member of TCG ONE Developer Team with full rights.
Preferably, we’d also appreciate software engineering experience with technologies like Docker, OAuth2, GRPC, Protobuf, Spring (web, boot, data), Vaadin, Play Framework to further contribute to the future system design & platformization of the project.
For Non-Programmers;
Even if you don’t have programming experience you may still contribute to TCG ONE in certain ways;
- Test cards in order to make sure cards were implemented correctly and/or card interactions are correct. For how to start testing, go to: Help out TCG One By Testing New Cards and Bug Fixes
- Help us validate Bug Reports reported by players. Some of these old reports may not be present anymore, but we first need to validate them by replicating the game setup reported via DEVUI then replying to the ticket either “the bug still exists” or “not able to reproduce”. If you are a developer, then you can attempt to fix the bug (see above).
- We always need high quality card scans and someone to manage them, for either new sets or to improving old sets. See Scans Server topic for more information and reach out to any staff member if you want to help so we can give you access.
- Contribute to carddb, the new card database module. It aims to bring card information to the front facing web site and integrate with the simulator in the future. This project also aims to be a general purpose Pokemon TCG Card Database. Currently we’re defining cards in YAML format. The format is still evolving and we need you to improve or update the database and its format. These cards are served through Cards - TCG ONE.
Task Management
Development tasks are managed on TCG ONE Trello Board.
Please leave a message in #development channel on Discord if you’re stuck with anything or have some questions.