Tabletop Simulator

Tabletop Simulator

MTG Deck/Draft/Cube Importer
 This topic has been pinned, so it's probably important
rikrassen  [developer] 2 Dec, 2020 @ 5:41am
Feature Requests
I'd love to make this mod more helpful. If you have a feature request please post it here.
< >
Showing 1-15 of 20 comments
Secybobolonie 4 Feb, 2021 @ 1:37pm 
I posted a comment as well, before I saw this thread. I would love if the cards spawned a bit more forward. I searched the script, but didn't see any position/spawn scripting that I was familiar with. I could do it myself if you identify for me were the spawn location chunk of script is.

Overall I LOVE the mod!
rikrassen  [developer] 6 Feb, 2021 @ 7:43pm 
Thanks for your support! Don't forget to tell your friends.

You should find the v0.5.0 update places decks in a better place for the Kraken table/other large tables.
Last edited by rikrassen; 6 Feb, 2021 @ 7:43pm
Secybobolonie 7 Feb, 2021 @ 10:46am 
That I do! A+ work. Everyone I have been playing with has been astounded with how quick the Mod loads up a full commander deck.
Secybobolonie 12 Feb, 2021 @ 4:42pm 
Another possible adjustment for you to explore:

Alot of MTG tables use encoder to give quick ways to edits to cards. The encoder depends on 'Oracle data' (whatever that is.). Your importer apparently does no have all of this data, and when your importer is used in conjunction with the Encoder, a piece is missing. Specifically, the power/toughness of creatures isn't automatically overlaid.

This is very minor, but useful detail. It would be awesome if you could get the 'Oracle data' via your importer and it fully functioned with the encoder.

MTG encoder mod:
https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=2246039633
sebi. 13 Mar, 2021 @ 7:09am 
Love this mod, seems to be the only one that works reliably, thank you for that!

One nice feature for draft would be specifying multiple set codes, so that boosters contain cards of any of those sets. Since we're not bound to the real world, we could generate boosters that don't exist in the real world, which would be quite fun. And those who still want a "realistic" draft, can still only enter a single code.
rikrassen  [developer] 14 Mar, 2021 @ 9:21am 
@sebi I like the idea of custom drafts. But I might start with implementing Cube draft, as that is a more established format. It would be fairly easy to add a cube importer from cubetutor.com
Potor 15 Apr, 2021 @ 6:41pm 
been working flawlessly for me, great mod. being able to change the backs would be even better
rikrassen  [developer] 16 Apr, 2021 @ 7:02am 
Thanks for you feedback Pötr, I'm planning on adding custom card backs to the Settings menu in the next update
Yo, awesome importer bundle! I'm thinking about adding it to my tables, however..
I do wish to reaffirm a feature request from above (Mr. C's oracle data request from Feb 12):

It would be nice if there was an option (or default) to include extra card info in the name/description fields of the spawned cards. I mean information like, card type, CMC, oracle text, pow/tou/loyalty.

Sample card (name only vs name+type/cmc/oracle/pow/tou):
http://cloud-3.steamusercontent.com/ugc/1683770885586252372/29A6FEA4F38AE4C6964F19CF23F3E9F47E824383/

The extra info provides for fairly significant quality of life improvements when playing MTG on TTS. For instance, having info like card type and CMC in the card's name allows to filter by those values when searching a deck (e.g. filtering by "land" when ramping). This info can be used for other automated scripts (like the easy modules for mtg encoder linked by Mr. C, or other scripts like automating cascade).

I would love make the scripting changes myself, but.. it looks like all the card json data handling occurs on the server/webApp side: https://importer-m7vpzqazfa-uc.a.run.app. So, there isn't any way to me to get the data (aside for running extra scryfall queries).

Would it be possible to have access to these values?
Scryfall's api output values I wish I had access to: mana_cost, cmc, type_line, oracle_text, power, toughness, loyalty.



----

Sidenote: for language support, it could be nice to avoid using scryfall's placeholder images (when it's a lower quality with a "Localized Image Not Available" waternark). These can be detected if scryfall's api shows "image_status":"placeholder" in the JSON output.
Last edited by Oops I Baked a Pie; 21 Aug, 2021 @ 5:55pm
rikrassen  [developer] 23 Aug, 2021 @ 6:23pm 
Hey Oops, I looked at adding this feature a while back, but I didn't get around to finishing it. I can easily add it, I opted for using a server to improve reliability and speed vs doing everything in TTS, and I have all the Scryfall data on the server.

That's a good tip about the image_status field, I'll leverage that to not return the low quality images.

I'll make those changes soon, and check back here with v0.9 when they are done
nice!

if possible, it'd be convenient if the cards end up having the same format as what's already circulating out there. if not, I'll probably pull the values out and reformat the fields anyhow for my use.

if cardDat is the json structure of a single card from scryfall's api output then,

name field of a card is (lua code):
Nickname = cardDat.name .. '\n' .. cardDat.type_line .. ' ' .. cardDat.cmc .. 'CMC'

description field:
Description = cardDat.oracle if cardDat.power and cardDat.toughness then Description = Description .. '\n[♭]' .. cardDat.power .. '/' .. cardDat.toughness .. '[/♭]' end if cardDat.loyalty then Description=Description .. '\n[♭]' .. cardDat.loyalty .. '[/♭]' end


^ ♭ is actually b to get bold text (wouldn't show up in the post if I left the b's in)

uh.. ah yeah, and if the card is double-faced, then everything aside for CMC is pulled from each card_faces substructure
Last edited by Oops I Baked a Pie; 24 Aug, 2021 @ 9:42pm
rikrassen  [developer] 4 Sep, 2021 @ 5:38am 
v0.9.0 has been released. Let me know if any cards have bad formatting and I will fix it. Data quality for the localized versions of DFCs is low, so those ones won't be great.
Originally posted by rikrassen:
v0.9.0 has been released. Let me know if any cards have bad formatting and I will fix it. Data quality for the localized versions of DFCs is low, so those ones won't be great.

Looks great! But there's one tiny thing missing: the planeswalker loyalty is not bold, missing the [♭] [/♭] around it. (The bold tags are used by scripts detect/find the numbers)
Last edited by Oops I Baked a Pie; 4 Sep, 2021 @ 12:15pm
rikrassen  [developer] 4 Sep, 2021 @ 3:25pm 
Yup, it appears I forgot that. I pushed a fix to the server, should be good now.

As a bonus I made some performance improvements this afternoon that took deck generation for cards with a name and set (no number) from 8 secs to 500ms.
Last edited by rikrassen; 4 Sep, 2021 @ 3:26pm
perfect!

I've now added a slightly modified version to my tables, next to the other loaders.
(I modified spawning positions relative to the players hands, as well as the default cardback)

Minor question:
I wanted to see if it was better if one could move around the XML panel... somehow I just couldn't figure out where to squeeze in the allowDragging='true' attribute.

I thought putting it into the attributes table within render_defaults() would do it, but no luck O.o

This is super minor and probably doesn't matter, but if it takes ya <=5seconds, would you let me know where I could make the GUI draggable?
< >
Showing 1-15 of 20 comments
Per page: 1530 50