senryoku / draftmancer Goto Github PK
View Code? Open in Web Editor NEWMultiplayer MTG Limited Simulator
Home Page: https://www.draftmancer.com/
License: MIT License
Multiplayer MTG Limited Simulator
Home Page: https://www.draftmancer.com/
License: MIT License
Find a source for Ikoria limited card rating and integrate it.
Several people have asked for more 2-player draft modes. There is now Winston, Grid, and Rochester, and they should be more discoverable. But we're open to hearing requests for others.
Filing and closing this issue in case people come here looking for these formats, since it's come up on Discord and in Survey #1.
Great news! The app supports cube draft (and actually has for a while, but hopefully it's more discoverable now). Under the "Set(s)" dropdown, click "Upload a Custom Card List..." or click on the Settings button to read a bit more about Custom Card Lists.
Filing and closing this because it's been a frequent point of feedback that players would like to draft cubes in the app, just in case they come here looking for information on that.
Drag & Drop is barely usable on mobile:
Using the adaptative view on Firefox desktop with touch event simulation gives us a similar behaviour so I'm guessing this has to do with how vue-draggable/sortablejs handles touch events.
Also, the problem was not present in earlier versions; looks like it appeared before drag & drop from boosters was implemented.
If you pick basic lands out of a pack, they are not counted against the land count which gets confusing in deck building and makes the helpful auto land tool a bit less useful.
It would be really helpful sometimes to be able to sort cards by their main type (creature, land, instant etc.)
Hello,
Some new players aren't may mix set name (e.g. Ravnica block). I think we could enhance the UI by adding set's icon to each set in the set combobox. What do you think?
It would take a bit more space though. It could be problematic.
related to #8
A bug occurred where the state of the deck, as seen in the app, didn't match what was imported into Arena. The bug can be found in the clip:
https://www.twitch.tv/videos/670645908?t=01h27m20s
A few minutes later in the video it's realized that there are 4 "phantom" cards in the count of the mainboard of the deck. There was a lot of issues with disconnects earlier in the draft, so it's possible that was impactful in the creation of the bug. I have a copy of the JSON for the draft log which I'll add below, though I'm not sure the log was in error.
From Survey #1 free response: "The bracket generator should allow to drop players"
Possibly brackets also need to be rethought for abnormal number of players.
I've never looked at the app in Mobile, but on Survey #1 someone indicated it could use some improvement.
https://magic.wizards.com/en/articles/archive/feature/rochester-draft-primer-2005-01-21
https://mtg.gamepedia.com/Rochester_Draft
https://www.youtube.com/watch?v=2rGoY4A4isg
I saw that Winchester draft, a combination of Rochester and Winston is on your list already...
Application doesn't load on Safari (iOS).
I don't own the hardware necessary to debug this. I don't want to officially support Safari or even mobile in general (the typical use case involves a device capable of running MTGA anyway), but better compatibility is always welcomed if someone with the means to look into it can fix it.
Hello,
I cam across a strange behavior. Steps to reproduce:
The snippet in question:
data is:
json [["71091","71089","71305","71278","71092","71166","71324","71156","71111","71068","71182","71236","71070","71187"],["71078","71273","71157","71109","71111","71163","71148","71106","71146","71073","71236","71198","71117","71098"],["71274","71305","71102","71193","71169","71072","71198","71129","71224","71135","71167","71146","71243","71087"],["71134","71085","71128","71231","71106","71183","71071","71136","71239","71165","71216","71186","71232","71098"],["71301","71285","71297","71115","71190","71227","71170","71205","71121","71076","71150","71182","71322","71112"],["71134","71241","71099","71218","71239","71197","71069","71104","71144","71216","71204","71201","71165","71123"]]
`
What is the purpose of flat()
?
Haven't been able to reproduce it locally.
Error: Card id 'null' not found! draft.js:1194:13
genCard https://mtgadraft.herokuapp.com/js/draft.js:1194
I think the frontend let me draw from the main stack when it was empty?
Edit: Happens when there is only one card left in the main stack and the player skip the last pile. The server starts by adding a card to the pile before drawing - in the now empty stack - for the player.
Hello everybody,
Senryoku talks about Winston draft in the main readme. Winston draft is the limited draft format for two players. Here is a quick video about it. I didnt find a winston draft simulator ala draftsim or else online. Do you know one? I would love to try it.
I would be really cool to be able to play it with another player. I open this issue so we have a place to talk about it. This is for a distant future, but I hope no so far. Lets do it :)
Hello,
What is the license of MTGADraft? The website choosealicense.com can be helpful.
Good night everybody.
Scryfall is missing some localization, at least for some variations of the GRN/RNA Guildgates, for example:
https://scryfall.com/card/grn/248/golgari-guildgate
This messes up the export functionality as importing in arena is tied to your display language (which is the real root cause here, but hey, what can you do?).
Hello,
This issue will be use to talk about the foil effect.
As far as I know, there is no way to have a foil print image through Scryfall. I hope you can correct me. An alternative would be to rely on a foil effect in the frontend. It is quite easy to achieve and in fact this is how the website archidekt handle it. Lets implement this effect in MTGADraft!
I start working on it and the result works quite well imho:
This is an enhancement we can survey for interest on Survey 2. If usage and interest supports this, we could have a way for players to queue for a default draft of the current set, and then automatic creation of 8-player drafts once enough users have queued. Along with this we may want some basic community guidelines around timeliness in playing games after the draft, a way to track Arena handles, and the ability to volunteer as a non-player owner ("judge") that verifies results and expedites match setup for new players. Plenty of decisions and unknowns here, but worth seeing how much interest there is.
This is an enhancement we can survey for interest on Survey 2. While one could certainly abuse this feature, having a basic indications of which users have won which drafts can be really fun and motivating, and might make the app stickier. I have a few thoughts on handling abuse, but when there aren't really many stakes, I think just having an unofficial thing up may get good engagement without too much complexity.
We should have an option for a Team Draft mode, which by default switches to 6 players, visually shows in the seating order what the teams are, and changes the bracket so that you play people on the opposing team.
Hello,
A screenshot is better than thousand words:
Here selected has no background:
Here remove as a background but we clip the set title:
Some ideas:
Since we are using font-awesome:
A common request/question in Discord, on the survey, and on Twitch chat has been about whether we do collation of cards correctly. There are good resources out there for how paper collation worked in recent sets, for example here: https://www.youtube.com/watch?v=kct0tF0qgdk I've never heard an opinion or analysis either way about whether Arena uses the paper collation rules, but imo we should mimic Arena whatever that is.
I pulled up a pack from an Ikoria draft log https://www.17lands.com/draft/67f5818d36ee481bacb3d7eccfde3fbb/3/1 and compared the commons to the print run of Ikoria https://docs.google.com/spreadsheets/d/1cnnB4iPSXsBZNGIa7K5XnQsFAHQtTUVqa_wQ1mfLjq8/edit#gid=0 (English/US in both cases, though I'm not sure if that matters). I think that pack has several things that show Arena does not use the collation rules of paper:
If someone has more information on Arena collation, that would be really useful, but for now, based on the logs I've seen and this comparison to the print collation, I think it's best to assume that cards are selected randomly with the same color balance restriction that we default to. Similarly, if anyone has logs of an Arena pack without color balance, that would be important to know. But I'm going to close this issue since I think our collation is as realistic a representation of Arena as we know, and I'm just filing for tracking.
Example: Return to Nature (THB)
This is an enhancement we can survey for interest on Survey 2. It would be nice to give a user the logs of their past drafts, with basic information about those drafts even after they have completed other drafts.
This is an enhancement we can survey for interest on Survey 2. If users build their deck inside of the app, they should be able to share the final deck within the app. This would need options like draft logs for who could see it, or to use the same permissions, and an option to lock in submissions (or at least timestamps for when things were submitted). This might eventually allow people outside of the draft to follow better via the bracket page, and could help with tournaments where deck submission is an important step.
In ManageCardData.py, I'm using (CollectorNumber, Set) as a unique ID for each card, but there is some cards with alternate art (Ghalta from RIX or Llanowar Elves from DOM (DAR) for example) that uses a different Arena IDs. These will fail to be imported.
Automatic testing randomly fail, mostly when testing reconnection of websockets.
Testing also sometimes fail locally, but very rarely.
My guess is that this has more to do with the way tests are written (poorly) than the actual server code, but I'm don't really know what's going on.
Wait for AetherHub to publish their ratings for M21, or find another source!
I and my friends have noticed an issue where some cards (generally white) are not being picked up from the MTGA log when importing a collection.
Using Theros Beyond Death as an example, Captivating Unicorn, Daybreak Chimera and Dreadful Apathy commons are missed, as are a number of uncommons. These are also shown at the bottom of the Collection Statistics as oppose to at the top with the other white cards (after not-in-booster cards).
Hello,
I got a booster with two rares:
This never happened as far as I know in MTGA. I guess the first one is a foil and a foil can be a rare. So two rares or I guess one rare and one mythic rare can be found in a single pack?
related to #7
Make "Glimpse/Burn Draft" easier accessible and give it a name.
I would like to see "Glimpse/Burn" as an option in the other games modes dropdown menu as well.
Clicking it should ask for the amount of cards to burn (defaulting to 2) and the amount of packs per player (defaulting to 9) just like winston draft ask for the amount of packs in the main pile.
That way this game mode - while already possible - become more visible to the ordinary user.
People that might not be aware of the format just don't get that you can play it as it's a hidden custom setting that needs to get adjusted with the right value in order to play it. The host also needs to add more boosters per person via the advanced settings.
Several responses in Survey #1 and messages in Discord have asked about supporting sets with cards that aren't in Arena. Using this issue to track that, although the current developer(s) might not have a lot of interest in this or ability to test it. That said, I think this makes sense as a question in Survey #2.
I think @Senryoku doesn't want to auto-shuffle seating, because it could be confusing/frustrating if you assign the seats and then they change, and I definitely think we need both an option for random seats and one for assigned seats. 80.9% of respondents in Survey #1 wanted some form of automatic shuffling, but it's possible the question wasn't phrased right. An idea for making progress on this: keep the shuffle button and the ability to assign seats, but have people "sit down" into random seats, so that you're always seeing the seating order that the draft would start with, but even if you don't take any special action you end up with a randomized draft order (versus one where joining time influenced the seating order).
Currently, cards are not shown bigger when you hover over them. They are only shown in full art.
For sets or cards that you don't know that well the text is still super small and can be difficult to read.
Maybe adding a zoom effect to the hovering as well would work?
In Survey #1, 78.6% of respondents prefer that the default does not limit duplicates in a pod. I think the question was a bit flawed, but regardless we should change the default over.
I've been loving the app and using it a lot with friends, but noticed how the gainlands are handled is a bit odd.
Maro has reported its a 50% chance to have the land be one of these gainlands
I'm happy to make a PR for this, but can you help point in the direction where I could find this part of the code?
It always shows x have uploaded their collection.
and displays the green book for me when I join the site.
It doesn't matter if the "Restrict to Collection" check box is active or not. It correctly remembers its former state on join though.
But I always have to check and uncheck the box again to correctly update its state and make it display the yellow book and ...but are not using it.
message.
Using FF 79.0
In the free response section of Survey #1, "ur discord has an invalid link and should be on the frontpage, people clearly use this website so u should build a community discord". I tried it and it didn't work for me either. Here's a link that should send people to General and never expire: https://discord.gg/mNJWQTB
Have not seen this personally, but from Survey #1:
I think there's a bug where timer doesn't reset between picks
The first a card from the deck or sideboard is dragged in Firefox, the ghost does not appear.
So far the only lead I have is that a "transform: translateY(0px)" style is applied on drag - I guess by vuedraggable - and that it may mess with Firefox.
In the gif the card is dragged left and right for the first time since its instantiation: No visible ghost. The second time the ghost works just fine.
From survey #1 free response: "way to survive the crown player crashing out"
While the page still works great on normal browsers...
It stopped working on mobile safari on e.g. my iPad. Could the recent right click zoom change be the issue?
MTGADraft allows users to enter games and form parties via unique session ID's.
After changing the ID in any way manually, the user leaves his current "room" and shortly after automatically joins an existing one (or creates a new one) according to the altered ID.
Also, when opening the page you always get automatically assigned a random session ID and join that game if it's your first visit. Otherwise you join the last known ID (saved in a cookie), no matter if that information is outdated or no longer relevant.
There is no check and you might crash a foreign party which e.g. happens to use the same simple name you used a few days ago for your own draft.
The page just doesn't allow you to be not part of a session and the concept of leaving a session on your own will is not known - which feels highly unintuitive. In general, I guess most players might not be aware how things work exactly. They simply use it and work around issues as they arise.
I realized that when I first got newly introduced to the page. (No doubt, I value the service and enjoy it a lot.
Some things are handled differently though and can be quite confusing for players.)
For me, the most natural way to leave a room was to empty the session ID as I saw no other possibility after a draft. That worked fine for the moment. But then, I ended up in another party where somebody else used the invisible session "" too when reconnecting to the page later. Or some random people joined mine in a different case.
I talked with @Senryoku already about that issue. Putting this up here as reminder and for discussion.
I think there are two problems:
Thoughts regarding those points:
Ideas from Senryoku:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.