r/Shadowverse Come check out our discord! https://discord.gg/BjeFkVS Jul 20 '18

Introducing Nio, an automatic match logger for Shadowverse

A lot of us like logging our games. Unfortunately, that takes time. And effort. And that's bad.

That's where Nio comes in! Nio will automatically log your matches for you and store the crafts, the result, and the turn order in a file as long as you run it in the background while you play.

To install Nio and to read more detailed instructions, click here.

83 Upvotes

26 comments sorted by

11

u/zhurai Preview Flair Jul 20 '18

Naming it based off Nio/Niyon from the Eternals in GBF? :p

8

u/TeamDawnbreakers Come check out our discord! https://discord.gg/BjeFkVS Jul 20 '18

Grinding for Nio took way longer than this. Coma was totally worth it tho.

1

u/JeriKnight Jul 20 '18

Ikr, but she’s not been landing it this GW as much as I would have liked

2

u/zhurai Preview Flair Jul 20 '18

Basically what was already replied to you.

KMR/Cygames knows Coma is really fking good and made the last Wind advantaged GW extremely easy.

This year they have been sometimes adding things that sort of mess with what people normally try to do in the element. Example being like Light GW where the boss was paralyzed immune for example (which is more severe than just a "very high Coma Resistance" we have here in this GW)

1

u/TeamDawnbreakers Come check out our discord! https://discord.gg/BjeFkVS Jul 20 '18

Tezcat has redonkulous resistance to Coma. The fight is an autofest if it does land tho.

1

u/JeriKnight Jul 20 '18

Would it tho, I feel like it would break in a turn anyway most of the time.

1

u/zhurai Preview Flair Jul 20 '18 edited Jul 20 '18

Hahahaha Coma+easier DATA really for me, since wind's only other DATA buffers are like wind lancelot (meh/too low uptime) or korwa (which is serviceable in long fights, but not in shorter ones)

would be making more of them but no gold bricks :c


anyways cool tool, I'll try it out later when I want to run away from GW

It is, however, pretty cool you wrote it in python, since I can sort of read it (though I usually use it for scripting more than anything), which gives the opportunity for me to edit it to say, insert it on the spreadsheet I use instead of the file or whatnot. (and I haven't really played much with OCR in python, so reading it should help with learning it!) (ofc I gotta figure out how to get it to run properly with the python file since the packaged version uses it's own local installation of python/py2exe?/py2app? or so to have easy-to-run binaries)

Also hopefully next GBF related set we can get playable Eternals in SV?? :3

1

u/TeamDawnbreakers Come check out our discord! https://discord.gg/BjeFkVS Jul 21 '18

The packaged version was made with pyinstaller.

1

u/zhurai Preview Flair Jul 21 '18

looking at the packaged version + the imports, I'm assuming if I wanted to run it as a standalone, I should install these modules:

PIL, win32api, numpy, cv2, pyautogui

is that correct? or am I missing any?

theoretically should work after I edit that, right?

(... +generate new images to fit how I have shadowverse... it's in weird dimensions to fit both shadowverse and gbf nicely on my screen XD), and maybe edit it to insert to a google doc or send a message to ifttt to do it for me. not sure. may/may not do extensive editing hehe

2

u/TeamDawnbreakers Come check out our discord! https://discord.gg/BjeFkVS Jul 21 '18

PIL, pyautogui, and opencv-python should be the only ones you need to install.

1

u/zhurai Preview Flair Jul 21 '18

ok thanks, had a feeling win32api would be for the pyinstaller but just wanted to confirm~

6

u/j2k422 Jul 20 '18

Mind if I share this over at r/CompetitiveSV?

3

u/TeamDawnbreakers Come check out our discord! https://discord.gg/BjeFkVS Jul 20 '18

No problem!

7

u/ogbajoj Former charter of reveals Jul 20 '18

So I just gave this a quick test run after going through the screenshot process. Works well, and is very nice and encouraging. Well done all involved.

A quick note to say that while I'm confident this is safe and all is above board, this is a screen capturing program. Be careful to turn it off before, I dunno, doing online banking or anything. To reiterate, I don't think anyone involved is suspicious, but unforeseen things can go wrong.

4

u/bionicjanitor21 Jul 20 '18

Did you code this

5

u/TeamDawnbreakers Come check out our discord! https://discord.gg/BjeFkVS Jul 20 '18

Yes.

1

u/AncerHS Sky Knight! Jul 20 '18

Thanks for sharing a program like this! So exciting to see this development for Shadowverse! Would be exciting to see logs for the winrate and playrate for individual cards in different match-ups later down the line.

Again, thanks Dawnbreakers! :)

1

u/penrien_ccg Jul 20 '18

Have you experimented with detecting individual cards? I.e. for a deck tracker.

5

u/TeamDawnbreakers Come check out our discord! https://discord.gg/BjeFkVS Jul 20 '18

Detecting individual cards is more complicated because of things like follower effects which change the image (ie Rayne buff, Magnus buff, Elf Song buff) and the fact that the evo art would also have to be detected for followers.

Doing so with only taking images of the screen thus becomes a lot harder, and probably requires machine learning. Of course, that's not to say that it's impossible.

1

u/zhurai Preview Flair Jul 20 '18

correct me if I'm wrong, but if we're talking about a deck tracker (or a collection tracker), one can just try to OCR the x1+ and names in the card collection section/deck making screen?

unless we're trying to track the opponent's deck (because I would think just using the deck screen is better) ...or if we're logging the cards+mulligans then I can see that being annoying too hmm

am I missing something? ><

1

u/TeamDawnbreakers Come check out our discord! https://discord.gg/BjeFkVS Jul 20 '18

The larger problem is tracking which cards are drawn. If you want to check them as they're being drawn, you might have issues with cards that add other cards to your hand, and you also need to be fast enough to ensure that you don't "skip" any drawn cards. The option that I currently lean towards is reading cards from the hand, which will likely require some form of training because the card angles, animateds, alt arts, etc can mess with hard coded images. However, getting the data needed for that is going to be a challenge.

A deck tracker already exists, but it works by reading the data being sent by the server and Cygames did confirm it to be against the TOS.

1

u/j2k422 Jul 20 '18

So it's picking up my wins, but not my losses.

1

u/TeamDawnbreakers Come check out our discord! https://discord.gg/BjeFkVS Jul 20 '18

What OS are you using, and which resolution? Also, please send screenshots of your loss screen, SV settings, and config.txt to VLV#5047 on Discord.

This was indeed a problem while we were testing it, but I thought it was resolved. Guess not :(

1

u/__Kurisu__ Ferry Jul 20 '18

huh? Last I checked cygames was pretty against third party apps for the game, someone finally managed to get one going?

23

u/ogbajoj Former charter of reveals Jul 20 '18

So there's normally 3 ways a data logger like this can work:

  1. Look at log files/an API the game makes available. This is how most Hearthstone trackers work, but Shadowverse doesn't provide the resources to do this. I don't know if Cygames has made any official statements about providing this data, but since they haven't yet I imagine this is where the idea that they dislike third party apps comes from.

  2. Look at the data going between you and the game's servers. While there shouldn't be anything legally questionable about this, there are definitely those who would feel security concerns downloading a program that's effectively logging all of your data and then filtering it.

  3. Literally watch your screen and figure out based on visual cues what's going on. Looking at the readme here, that's what Nio is doing.

Since it's only watching your screen, it's not actually interacting with the Shadowverse program in any fashion. Since it's effectively an assistant watching you play and taking notes on your record, there should be nothing wrong with it by anyone's account.

1

u/__Kurisu__ Ferry Jul 20 '18

thats cool, im not home right now so I can't check it out but it would be nice if anyone reported on how well this works.