monovertex / ygorganizer

Source for http://ygorganizer.com
MIT License
8 stars 4 forks source link

Deck Builder #1

Open monovertex opened 9 years ago

monovertex commented 9 years ago

Deck builder similar to DevPro's and YGOPro's builders. List of cards on the right, card info on the left and deck areas in the center.

Features:

Current Status

The interface for the main build is already built, but it's not yet saving the decks.

The list of decks is already built.

mkaatman commented 9 years ago
monovertex commented 9 years ago

I moved your comment to issue #2, as I feel that for milestone 2.0 we should have the basic Deck Builder first, and we'll focus on improvements and additions for milestone 3.0.

mkaatman commented 9 years ago

On the link to a deck/revision. I wonder if we could come up with an algorithm that would always generate the same unique id depending on the named cards and quantity in the deck.

So if user A and B both had 1xCard1,1xCard2,38xCard3 the link to the deck would be the same but maybe each would have their own revision history.

Similar to the Diablo skill calculator: http://us.battle.net/d3/en/calculator/barbarian#TfehRP!bZYj!...bcZ

If 10 players all came up with the same build, they'd all end up with the same link. I'll do some research.

Then you could give stats like 5% of people have this deck in their profile.

monovertex commented 9 years ago

We could keep the deck configuration as a general model and then each user has a deck "wrapper" model which stores a link to a "core" deck model, the name they give to the deck, the description and the history (as these are user-specific).

Then when a user changes their configuration it just creates a new "core" model, or switches to an existing one, if there is one.

Finally, I think that if there are multiple cards with a word in it (say, Nekroz), give that "core" model that name and display it as a subtitle in the deck builder, one that the user cannot change. Perhaps have another model that would be sort of a general class for multiple deck configurations. Then the user can view what other people run as a configuration for that class.

I think this is a really good idea and it ciuld help with the deck building. Will copy this to the other issue.

mkaatman commented 9 years ago

I wonder if we could use something like this:

http://codepen.io/anon/pen/PqMPba

Take a list of card numbers prepended with quantity, and generate a hashid that is saved to the db with that combination. Any time any user builds the same exact deck they end up with the same hashid.

In this instance: 3 x 88409165, 2 x 36088082, 1 x 23269426

Could be referenced with something like: http://ygorganizer.com/deck/6m3rwDgTVve2WnFQqgJk

Do all cards have numbers?

monovertex commented 9 years ago

Not all Cards have numbers like the one you mentioned. I would rather go by the ID they have in the database, although that means that only our tool will be able to generate these decks, because 3rd party tools won't have access to the IDs. It's not really a deal breaker for me, honestly.

But yes, that's a good idea for quickly identifying deck configurations.

mkaatman commented 9 years ago

If there was demand, there could always be a service to match our id with a name or set number.

But I agree, it shouldn't be a deal breaker.