paul-lrr / nifty-recognizer

node server and html files to connect the Deckedbuilder card recognizer to a streaming overlay
Other
36 stars 4 forks source link

Card image never updates #10

Open alchemyprime opened 4 years ago

alchemyprime commented 4 years ago

I'm not sure what's happening because I'm much lower on the tech scale than most of GitHub's userbase, but here's the deal -

The card image won't update, even when DeckedBuilder recognizes a card. I thought it was the "new cards have the wrong id's" error, so I went and tried some WAR cards - no change. I tried re-unzipping DeckedWPF from the zip - no change. I changed cameras, I uninstalled the "new" version of DeckedBuilder I had - still no change. I don't know what's going on here.

I do know that half the time, DB crashes and I need to end task from my task manager to get it to reload. And I do know that if I manually drag in an override it works, as well as if I use CardMatch to a gatherer ID - I feel there's some issue between DeckedBuilder and the node, but I might be wrong.

Can anyone help me? My Magic streams are suffering.

stocksy404 commented 3 years ago

Hey there. I was having the exact same issue, I was following all of the instructions and still couldn't get the card reader to update.

I was looking at one of the other threads, and a lot of people were having the issue where DeckedBuilder would overwrite the manual code that you have to put into the xml file that's in your appdata, so that whatever you were scanning in the card reader would transfer into the URL. There were suggestions to make the file read only after you entered in that code, but it would just brick the program for me.

One thing I did try though, was after entering that code in, I opened the xml file in one of my web browsers so that it wouldn't update itself, and it seemed to work. I was able to scan stuff in the card reader and it was showing up in my OBS overlay.

Let me know how you go.

Rhyodon commented 3 years ago

Hello all, unfortunately I have already tried that one or the other but with the special decked version it does not work. Of course, the function of the card controller and the manual retrieval via the CardID works.

@paul-lrr what are we doing wrong ? do we need to use a special node version ?

Update: I figured something out. In dblog deckbuilder sends this http://localhost/cardmatch/1236296 as a card id. When I used this link nothing is happening it is deckmaster screen. My Cardmatch is bloodsoaked altar from M20 Edition https://gatherer.wizards.com/Pages/Card/Details.aspx?multiverseid=466844 With http://localhost/cardmatch/466844 it works.

Is there anything wrong with the cardmatch of deckedbuilder maybe?

Update: the CamCard2Beta sends the internal indexid of the deckedbuilder from their local sqlite db version dbdir232 image I found this entry that shows that the mvid refers to the gatherid.

now the question where must something be adjusted.

Kind Regards Rhyo

paul-lrr commented 3 years ago

It looks like, for some sets, deckedbuilder is using an internal id instead of the multiverse id 😞 The system should still work by building your own orb file of the cards in the set using the included orb_maker.exe, but the deckedbuilder premade orb files might not work.

SuppenNudel commented 3 years ago

About the multiverse ids: I've been in contact with the deckedbuilder support and tested around on my own once. Sets up until "Game Night" use the "official" multiverse id. And since "Ultimate Masters" they use their own ids starting with 1234567. As a workaround I've written a script that creates a .coll2 file with all cards from 1234567 until the newest card, import it into deckedbuilder, export it from there as csv and use that as a lookup table for any further card handling.

Rhyodon commented 3 years ago

@SuppenNudel would you like to share your script with us ?

i have also written to decked builder support to see if there is a strategy to re-align the ID with the gathererid or if they have their own strategy for streaming solutions.

SuppenNudel commented 3 years ago

It's a python script. The end of the range has to be updated. https://github.com/SuppenNudel/decked-builder-utils/blob/master/new_decked_builder_ids_as_coll2.py

paul-lrr commented 3 years ago

@SuppenNudel cool idea about building the lookup table! I would also be curious to know if you get any useful info from deckedbuilder support.

TBH I primarily use the system with custom orb files these days, since we do a lot of streaming with large card pools (highlander, commander, etc) or prerelease sets that are not on deckedbuilder.

SuppenNudel commented 3 years ago

@paul-lrr unfortunately I did not get any useful info from them, other than that they have to stick to their current id usage, which I described above.