sebi wrote:First problem with the current system is that you cannot mark decks as being either "built" or "ideas".
A simple check box on the deck edit page would be enough to mark a deck as built or not. Just that a check box. Don't worry about verifying that all the cards are actually owned. See below...
sebi wrote:If we did that, next issue would be that "built" decks should not contain generic cards like now, but specific cards, from your inventory, with exact printings & conditions etc. Since these cards are now part of your built decks, they should be visible as so in your inventory, and somehow be "separate" from your main collection. This makes working with these cards more difficult.
IMHO with us able to specify the condition and other markings of cards, the cards should have been individually addressable from the very start. Each row in the database should be considered a different card. You can do some DB tricks such as lumping "duplicate" cards into a single row and using a column that indicates the number of those duplicates but in the end each of those should be an individual card. If something happens to one of those (say I get one of my 12 copies signed) then when I go and update that card it would end up creating a new row in the DB indicating that the one that is signed is different from the other 11 because of the signature.
sebi wrote:Some users will not want to trade out of their built decks, other will, this is one source of confusion, as we have to choose and design a way to interact between these built decks and your tradelist.
This is a users preference. The user should be smart enough, if they don't want to trade from their deck, to check the trade count when creating and/or editing a deck. Alternatively, I could see a tool provided that removes all cards in your decks from your trade list with the option to choose only built, unbuilt, or all decks. I don't see why you would need to implement something to enforce this preference in the system. Seems like something a user could do themselves.
sebi wrote:Furthermore, some people will have a set of Tarmogoyf, and will want to use it in 4 decks, without having to buy 16 Tarmogoyfs. Hence there would need to be a way to signify in these built decks that one of them actually has the goyfs, the other 3 decks just have proxies of them.
This actually requires no changes. A user can add a card to the deck that he doesn't own. You could allow a deck to be mark built even if not all the cards in that deck are owned. In this case the user would have one deck that would have 4 of the cards and they would be marked as "in use" with that particular deck. The other 3 decks would have 4 cards and they would simply show up as in the decklist count but there's no cards available to mark as "in use". When the user takes the deck apart that actually has those 4 cards in it he will be updating the deck in deckbox to signify that deck is no longer built. He would then go mark those 4 cards as being in the deck he actually put them in.
I could see an option available to "automatically assign unused cards to decks" where in if a lazy user in this case were to mark his first deck unbuilt and then go about his merry way the system would recognize that 3 other decks are "built" and use this card but that the card isn't marked "in use" in those decks. It would then pick one (which one doesn't really matter) and assign those 4 cards to that deck. Not really the greatest solution to this problem but hey, it's a lazy user anyway.
scshunt wrote:Mm... This is why I don't think that we should require distinct inventories,
Distinct inventories as I have envisioned them have no bearing on this at all. Being distinct sets there would not be any mixing of the cards between the inventories, EVER. You would never have a deck with cards made from both inventories. Just wouldn't happen. The entire purpose of having inventories separated at such a high level is to indicate their unique quality that they NEVER EVER mix. Think of each inventory as a different deckbox user account. Your cards and my cards never mix, thus one inventory and a second inventory will never mix. A card would only exist in one and only one inventory at a time ever, and an inventory would have its own set of unique tags, decks, lists, etc. that is not shared with any other inventory.
scshunt wrote:but just allow tags that a card may have one or more of. You can then represent a deck as a specific kind of tag.
Now tagging, yes tagging would allow a cards to mix and belong to multiple tags at a single time.
This is essentially what the decks are today. Sadly their hierarchical nature today prevents them from being in multiple groupings. When they truly move to being tags we could put a single instance of a deck in multiple groupings (folders).
scshunt wrote:If a player doesn't want to trade his deck cards, he can do a search for cards tagged with deck tags and remove them from his tradelist. If you have a single copy of a card that you move between decks, tag that copy with multiple deck tags.
Precisely, even if the decks aren't implemented as tags allowing a search of "cards in decks" (with an option of built, unbuilt) might even suffice in lieu of the tool I spoke of above.
scshunt wrote:This could theoretically be different from the decklist feature, but to me dealing with that seems straightforward. Have columns "Number on decklist" and "Number in deck" on the deck view; the former is the number of cards you have on the list, the latter is the cards actually tagged with the deck's tag. If you click the number in deck, you get the popup window for that card, so that you can edit it.
Well put.
scshunt wrote:This also seamlessly allows for a card to be in the deck but not on the decklist. This is true for one of my Commander decks; it has several placeholders that don't appear on the "official" list but are physically in the deck.
This I disagree with. The point of all this is to indicate where your cards physically reside. If they're in your deck they should be marked as in your deck. If they're in your collection they should be marked as in your collection. Why would you possibly want to mark something as in your collection if it is actually in your deck? The only reason I see here is being able to pass around a bogus decklist to friends so they don't really know what you're playing.
On second thought I could see you having an "official" decklist maybe via net decking that lists cards that should be in the deck you don't own and your "place holders" are your substitutes for those cards until you can acquire them. You want to keep the "official" decklist so you remember what cards are supposed to be in the deck but you also want to know what cards are actually physically in your deck. The more correct way to go about this would be having two decklists. The "official" decklist the unchanged one marked as unbuilt and a second decklist that includes the cards you actually put in your deck and it would be marked as built. You still have your reference and you now have an accurate representation of where your cards are at.
That said as above you could have something in your deck list that isn't in your collection. It would seem strange to me and it would probably break the deck tools to allow you to set the decklist number to 0 in the deck editor and to set the "number in deck" to a >0 number. If it were me doing this I would have a constraint placed on the decklist column that it would always be >= to the number in deck column. This would help ensure the user is marking this where they physically are.
scshunt wrote: Privacy settings should allow a player to display publicly only the decklist, the number of each card in the deck, or the specific versions of each card in the deck.
I'm all up for greater privacy filters. I like this idea. Might also add a filter for built/unbuilt settings. If I'm working on some secret tech maybe I don't want to share it before it's time. If you end up adding a built/unbuilt check box could probably add a check box for visible. This way if a user wanted to filter privacy at the deck levels he could.