nikolayxhd / mtgdb Goto Github PK
View Code? Open in Web Editor NEWMtgdb.Gui - desktop app to search MTG cards and build decks
Home Page: https://www.slightlymagic.net/forum/viewtopic.php?f=62&t=19299
License: Other
Mtgdb.Gui - desktop app to search MTG cards and build decks
Home Page: https://www.slightlymagic.net/forum/viewtopic.php?f=62&t=19299
License: Other
So, in my experience, the way the filtering tool is just takes up a lot of space, which could be better used. Also, in smaller screens, it could actually be a nuisance.
My suggestion is that, instead of having it as multiple rows in the raw UI, you could have a "Filter button", which would bring up an extra window with the filtering options.
extend deck concept to MTGO-like binder
binders should be editable like deck
add hashtag-like UI to use binders as tags
allow binders to be referenced in queries e.g. binder: wishlist AND price: [0 TO 10]
When you click on "General Settings", it brings up a browser window with an XML code. The user is supposed to rewrite such code to change the settings in his/her app.
Having a regular Settings Window pop-up is a lot more user friendly (as well as more visually pleasing)
By clicking separate open in new tab
button or middle mouse click.
Open in new form
can also be implemented
The cards inside deck can be assigned one or several user-defined tags, e.g. 'creature_removal', 'counterspell'.
The filter by tags is added to the deck panel to show or hide cards with specific tags.
This is more of a suggestion than an issue, and I believe it can be quite challenging to pull off. However, I believe it can make the app stand out among the other collection manager apps.
Instead of the "TDI system" that's being used today, I'm thinking of making the app as like a big white board in which you can bring multiple windows, to maximize user customization (and boost practicality).
It would work something like the Fruity Loops UI: when you open the app, it would be empty, with just the superior row for tab selection and other options. From there, you could prompt the app to open windows specifically for the things you want to work on (a Deck window, a Collection window, a Search window, a Selected Card Details window, etc).
Those windows would be each scalable and customizable on their own (this way, the user could choose how he wants his interface to look like, both to enhance aesthetics and boost usability).
The tabs would be used to manage multiple "white boards".
(found in C:\Program Files (x86)\Wizards of the Coast\MTGA\MTGA_Data\Downloads\downloads.manifest)
C:\Program Files (x86)\Wizards of the Coast\MTGA\MTGA_Data\Downloads\AssetBundle\arenasup_mdnassetlibrary_974cf4730a4eee7bd102281a1b2f50a3.mtga
C:\Users\Kolia\AppData\LocalLow\Wizards Of The Coast\MTGA\output_log.txt
<== PlayerInventory.GetPlayerCardsV3(732)
also referred as EUR prices in scryfall.com
using Undo
does not solve it, is too slow and inconvenient
[rs800]: How about add proxies on foreign languages with crops, fonts and templates?
suggested here
To make the input of large numbers such as 25 plains easier
or use Right and Middle mouse buttons
vague, hard to understand
dragging a card to main deck / sideboard tab
dragging a card to a tab in window header
hard to understand what tabs are referred to without an illustration
Shift
+ Enter
or Ctrl+Enter
Tab
keyImporting and exporting some cards, I could find that there is something weird going on with these split cards like:
1 Appeal/Authority
1 Turn/Burn
If added to a deck and exported as MTG_Online format, they simply despear, well, depending on the selected side of the split card.
Examples:
as mtgdb.gui format all good but
test_deck_json.txt
as MTG_Online format some of the cards are missing
test_deck.txt
formats are mentioned in Feature List and Window header sections
Text: "\+ ? \+"
matches
[+1]: You gain 1 life.
You see, the app has quite a lot of issues in regards to UI. The filter system is badly optimized (takes the whole window and is kinda incomplete), the setting tab and the search engine requires you to have knowledge of coding (something not everyone have), card images are not scalable and the inability to see both your collection and the full catalog at the same time is quite annoying. It's a good app, but has a lot of room for improvement
I'm looking for something that searches for a deck based on the cards you have (or on a list you provide).
The idea is to show a GUI where
The problem user was trying to solve would be answered by aggregated properties like Missing Cards Count
, Missing Cards Price
In order for the aggregates to be useful, deck should be transformed before calculating the aggregate, e.g. non-owned cards should be replaced by owned namesakes when available.
This leads to a notion of deck-to-collection and deck-to-market matching settings that influence how the deck aggregates are calculated.
Version: v4.0.1.1
I launched the application (which displayed the cards fine) and went into the update menu, updated the card list from mtgjson.com and restarted the application. Nothing appears in the card window. I checked the logs and found this log:
2019-02-26 16:02:50.3482 11 Error Mtgdb.Ui.Loader "System.ArgumentException: An item with the same key has already been added.
at Microsoft.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at Microsoft.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccess(Task task)
at Mtgdb.Ui.Loader.<>c__DisplayClass4_0.<<wrap>b__0>d.MoveNext()" "System.ArgumentException: An item with the same key has already been added.
at Microsoft.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at Microsoft.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccess(Task task)
at Mtgdb.Ui.Loader.<>c__DisplayClass4_0.<<wrap>b__0>d.MoveNext()"
I deleted the bundle that's extracted from the release zip and unzipped again (to return to the default state) and it correctly launched with the cards in view, so I think that confirms something in the updated card list is breaking the UI.
Expected Result: Able to update with the latest card json and have the UI continue to work.
In order for the aggregates to be useful, deck should be transformed before calculating the aggregate, e.g. non-owned cards should be replaced by owned namesakes when available.
This leads to a notion of deck-to-collection and deck-to-market matching settings that influence how the deck aggregates are calculated.
also mass import decks from https://www.mtgtop8.com/archetype?a=292&meta=175&f=ST
The purpose is to let user track its progress while collecting all cards from a set
Let user add tokens to deck so he can print them
separated from #2
Never used your app (and will probably never use it as it's Windows-only, that's the "like:" feature that brought it to my attention), but I downloaded it, and browsed through the directories. You ship pdb files, and this only makes sense for developers, not users, so unless you target a developer audience, you should probably not ship them in your releases.
Having the images in Mega can be quite annoying, as "bandwith limit" is a thing.
So that any user can unzip it with basic Windows .zip manager.
Update .zip should still be strongly compressed
Reproduce:
ManaCost: (\{w\} AND \{r\} AND NOT /.*[gbuc123456789x].*/) AND Cmc: 2
Result:
Selection range is interruted and starts with some intermediate position
Does not reproduce if first click of selection is done when window is not focused
it can be hosted in gdrive and downloaded when it's usage is required
Separated from #2
In addition, ordering cards within a collection shold be possible.
The purpose would be to make manual input of physical collection easier.
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.