[Help Needed] Merging Card Database


#1

Hello everyone, I need your help on this!

I am building a new card database module for TCG ONE to serve for many needs, and I need help merging two different card databases into one correct one. They both have errors in the card information fields and I’ve built a new tool to help merge these information.

You don’t need any programming skills for this, you only need to be cautious: please read cards clearly and pick the best option during the merge. Please follow the instructions carefully and ask for help in case of any issues.

Run Instructions

  1. Have Java 8+ installed on your system. You probably already have it. But if not, install from here.

  2. Download the carddb-merger tool. Double-click on the downloaded .jar file to run it. It should run fine on every major desktop system. It will download a library first so first run will take it a bit long. It will show the console output in a seperate window, keep it open, and post any errors/exceptions you get.

  3. Tool will present you a list of expansions to work on and you can select any to get started.
    image

  4. After picking an expansion, it will start merging and ask you for any difference it finds.

    You basically need to select the best option (in above cast select 1st one because ‘30x damage’ does not belong to the attack text, damage text is specified separately).

    Another example, pick 2nd here because it’s an evolution.

    Example, select one with non-empty resistance, 1st one.

    Always pick 2nd for enumId differences:

Merge Instructions

Please read below instructions carefully!

  • You will be presented some options and you need to select the correct option by looking at the card text on left. The changes will be marked with bold and underlined text.
  • The place of the difference is given at the top. Example: /moves/0/text means the difference is in first attack text.
  • IMPORTANT: If you don’t know what to select, please STOP and ask for help on Discord or this topic, INSTEAD OF selecting a choice. I will quickly reply ASAP.
  • ALWAYS pick 2nd for enumId differences, especially valid for classic cards in BASE_SET, JUNGLE, FOSSIL, TEAM_ROCKET, etc.
  • For rarities: Select Secret if the card number is out of the card range (e.g. 137/135) (usually 2nd).
  • For rarities: Select Ultra Rare for -EX and -GX pokemon (usually 2nd).
  • For rarities: Rare vs Rare Holo can be hard to know, please consult bulbapedia in that case.
  • For GX attacks: Select one with -GX (1st).
  • For 00x damage prefixes on move texts, select one WITHOUT that prefix (1st).
  • For abilities, pick non-null one, if the card has ancient trait, ability, pokemon power, poke-power, poke-body.
  • If card does not have any ability, pick null
  • ALWAYS pick or write types in brackets. Example: Fire Energy -> [R] Energy.
    • Fire: R, Water: W, Grass: G, Fighting: F, Lightning: L, Psychic: P, Colorless: C, Metal: M, Darkness: D, Dragon: N, Fairy: Y
  • If both of the options are wrong, sometimes you can write your own in the big box. Copy from 1st or 2nd, edit the text, and hit OK.
  • For trainer cards with multiple lines of text, please try selecting the most complete option with commas. Commas in the [] clause means line feed.
  • Nidoran male and female should have one space between their names and gender icon (choose 2nd).
  • You can close/stop the program ANYTIME and run it again to continue where you left of (even if you don’t hit Save & Quit button). If you hit ‘Save & Quit’, it will dump the merged cards to output folder. After you’re done with couple of sets, please send the contents of those files to me.
  • It is NOT POSSIBLE to go back and undo your selection once you’ve made it. If you do, please take a note of the error, and include it with your submission. You can also edit the output YAML files for any errors before submitting.

Submitting

Please send your submissions to axpendix@hotmail.com

OR better, if you can, submit a Merge Request to https://gitlab.com/tcgone/carddb which is the actual public carddb repository which will have all the cards open to the public. Procedure to submit to the repository:

  • Open Gitlab account then fork the repo under your name (click Fork button on carddb project)
  • Clone it on your computer, then put the .yaml files under src/main/resources/cards folder.
  • Commit & Push it, then open a merge request using this link (replace MYUSERNAME with yours).
  • I can help you with all phases of this, please send a message.

Advanced

If you made a mistake and would like to edit the underlying data files in full extent, please download ROBO 3T tool and connect to local server while the merger tool is open in the background. Use localhost as hostname and 12377 for port number while connecting.

Splitting Work

Due to large number of expansions to be done, we need to somehow split the work. Please comment below on what expansions you are working on. We also need more than 1 person do each expansion, THEN do a final merge on those as well, to have the most errorless data possible.

Remember, please write/post screenshot HERE or on our Discord dev channel if you get stuck, thanks!

You’ll get credited on our home page for your distinguished work. Please also consider that we’re looking for people to carry Card Master role in our staff team who will be responsible for the upgrades and maintenance of our Card Database later on.

Best


#2

I’ll start with base (set) and base set 2


#3

and continue with jungle, fossil and team rocket


#4

Updated the post with 0.0.5 version to fix an issue.


#5

We are still in desperate need of brave people to download the tool and do some merging, please don’t refrain yourself! Thanks


#6

Hi, I can do a few expansions in my free time. I was planning on starting with dragon majesty & lost thunder.