nasicus / d2-holy-grail Goto Github PK
View Code? Open in Web Editor NEWHome Page: https://d2-holy-grail.herokuapp.com
Home Page: https://d2-holy-grail.herokuapp.com
First of all, thank you for this tool, very neat. :)
Since I needed an easy way to self-host this (and I prefer to deploy pretty much everything using containers these days), I created a simple Docker setup for production usage: https://github.com/imtbl/d2-holy-grail-docker
I thought I'd post it here in case that's something you (or other users) are interested in; feel free to use anything from that repository as you see fit in case you decide you want to provide an official Docker setup.
Please close this issue at your discretion; it's not really a feature request, but I wasn't sure if closing it right after opening would be appropriate.
The app has listed 4 Rainbow Facets, one for each type of elemental damage. While this would make sense if the CtC on death/level-up was a random affix on them, that's not really the case and the actual count of unique jewels (i.e. facets) is 8, the only random affixes being the percentage ranges for damage/negative resists.
This is easily verifiable by looking at the game files (convenient link). Drop calculators such as http://dropcalc.silospen.com/item.php, http://mfb.bplaced.net/dropcalc/dropcalc.php?lang=en and the one in ATMA also make this distinction.
This creates 2 problems:
The optimal solution would be to replace the current 4 with a new array of 8 facets, making sure there's no way for someone who's already ticked them to match the old ones, and then emailing users about the change, but IIRC that's not possible as the app doesn't collect emails on registration.
On that note, kudos for completely detaching yourself from privacy issues, though it does also mean if I ever forget my password I'm kinda screwed. :D If you decide to change that, I'd be happy to help you with the security-related issues that come with it as I do have expertise in the area.
So, I suppose the doable solution is to put up a notice on the site instead of emailing, maybe using a cookie to determine who has seen it and who hasn't?
Hi,
Is it possible to change the login name or display name?
I forked this project last week because I'm interested in using the site locally for grail tracking in D2R. My main goal was to add the ability to track runes as part of the main grail progress. At the bottom you can see the change log entry for the work.
Don't know if any of the changes would be worthwhile for your main branch. As a React noob, there were a number of "hacks" that are probably bad form (like the global stylesheet). Either way figured I'd give visibility here. If interested in any part, go for it. If anyone is willing to review the changes and provide feedback in a 'new issue' on my branch, I'm open to feedback to learn better approaches and to clean things up.
Feel free to close out this issue once you've read it.
github.com/theredsox/d2-holy-grail/
"2.1.1": [
{
change: `Added rune tracking for grail, D2R images, and UI tweaks:`,
children: [
"Updated and added D2R images for all existing uniques, sets, runes",
"Reorg of right side buttons and main menu",
"Added rune tracking towards main grail",
"Added flex layout to better utilize space at various screen sizes",
"Reduced padding in various places to better utilize screen space",
"Sets tab now uses a 'cards' layout, added completed set pics, and fullsize on click"
]
}
],
The party title could prepend or replace "Holy Grail Leaders" on the leaderboard data table.
A party description could then be put in smaller font underneath to give some context to who runs the party and who should be a member, etc.
Will need to modify:
-party database model
-party leaderboard page
-party manage page
-api methods for updating these
Downloads the holy grail as a json.
Currently only the missing items are shown.
However it would be nice to switch between the views.
As I am finding Holy Grail items, some of them turn out to be ethereal. Instead of having to manually mark the item as found in both the Holy Grail and Eth Grail, it would nice to mark the item as found in the Holy Grail, and mark it as "Found Ethereal" (similar to "Is Perfect"). Doing this will mark the same item as found in the Eth Grail.
Of course, not all items can be ethereal. According to the Diablo Wiki:
Ethereal items are representative of weapons and armor (but never amulets, rings, arrows, bolts, bows, crossbows, Phase Blades or set items) crafted from other-worldly material.
Furthermore, I believe items that have the property "Indestructible" cannot be found ethereal. Hence, the logic to determine whether or not to show the "Found Ethereal" option might get verbose.
Just a thought! Let me know what you think!
I'm envisioning a feature where you click on a users name on the loader board and a row underneath drops down with some extra info.
Top 5 rarest items found? -> by itemscore
Link to grail?
It's unnecessary
I registered an account with a password. Then I tested accessing the account directly by the uri. I was able to change stuff and save it to the server, when I logged in the changes were actually saved. Am I missing something here?
Try using margin: auto
instead.
They are all in one file currently, will probably look better if they are split up in own methods or files.
It would be helpful if we'd add a button to the right side called "copy" which bascially just creates a copy of the entire grail data.
We could just somehow display the initial dialog:
.. and add some infos to it "Will create based on grail of XYZ".
I have quite a few "I forgot my password" requests from time to time. Usuaally I reset it for them.
But with this you could just copy the grail to a new address and then continue from there (helpful in case I cannot be sure if the person asking me is really the owner of an address).
I used your Holy Grail every day! Big fan of it. Best way to track and log stuff. I would like to be able to use the cntrl+f function though. Reason why I like it more than your built in search function is because I can see what items are around it and how I am supposed to order things in my stash.
PS. Do you have a Discord you can share?
(Would be useful as I forgot my password and cannot create a new account with the same email adress on the herokuapp instance.)
We are already calculating a lot of the stuff already on the client (missing items).
Plus it would take the work away from the server which is in this case good.
However currently this is done in the table component on "render" (I think). We'd need to move this out somewhere, maybe to the GrailManager
?
Before implementing this we should first discuss how we want to do it.
I noticed that a lot of items have the following note:
Originally found in Ladder only, but has been reportedly found in single player games.
Well, ladder only items can drop in single player ... not just reportedly, not just certain items, but for real.
I've seen confusion about this in other places too, so I'll explicitly say I'm not talking about PlugY, PoD or other mods - all ladder-only uniques (except the Annihilus and Hellfire Torch charms) and horadric cube recipes are available in vanilla single player, without any mods. Only the runewords and ubers (hence why no "torch & anni") don't work.
Oddly enough, the unique charms don't have the above note, while being ladder-only items. :)
And start over from scratch. I just nuked my save files and am starting over, but don't see a way to reset my account.
So, I found a 5/5 Cold Up facet and went to the app to log the find, but when I submitted the changes, the star was appended to the Die one instead. If I bring up the modal window for either kind, they both show "Is Perfect" as ticked, and unmarking either one causes the same change to both.
Played around with the other elements a bit, and it appears that marking any of the Level Up ones as perfect alters the Die one instead. Weirdly enough, this didn't happen a couple of days ago when I marked a Lightning Up facet as perfect, but the difference is I already had the Die one marked previously (didn't unmark it after the #22 migration).
I realize this reads a bit hard, so here's a visual (left both cold ones unmarked) of my last saved state:
I lost the password to my account.
If you can help me out or just delete my username off the database as you said you could do for someone else in a previous Issue thread, I'd appreciate it.
I've contacted you on Discord too, and I don't know which you'll see first but this might be a fine place to put this request just for the future.
Thank you very much!
=> this way the user can check if he has been denied (by entering his address in the join screen again)
=> party owners have an overview who they already denied
=> show a third list on the manage page with the denied users
=> denied users can also be deleted
I forgot my password, is there a way to reset it?
I am writing an automatic run counter https://github.com/oskros/MF_counter_releases which has the ability to log found drops. I would like to be able to synchronize this app with your holy-grail user.
For this I would love an API with 2 features
When you refresh the page on the manage page, and in the mean time somebody new requested to join, you have to reload again (so 2 x times in total) to see the request
Should we be fetching updates periodically?
Also how can we make sure the current data displayed on manage page is most up to date.
Shows bverrit keep instead of stormshield
Lists all items which you are still missing.
=> do it via settings dialog (optional)
=> on create save the original address which the user typed in
=> show this display name on the party/leaderboard page
Having the unindentifed name of items maybe in () after real name would be a very nice addition. It would help to know what I need to pickup in the first place to identify.
Some stuff is now duplicated:
We should try to make common components with properties of them, so they can all be reused.
Note:
Only do 1 file / area per PullRequest - do not make them all in one!
CTRL + S
to saveEscape
to discad (?)CTRL + F
to search (probably only when not on search page? or never?)The item display + search only works by the item's actual name, not its base type.
Example: "Bloodletter Gladius"
Gladius doesn't appear in the list (less important), but you also can't find Bloodletter by searching for "Gladius"
A common usecase for me is finding an item on the ground but not remembering what it's called before identifying it or whether I've found it before. Would be great to be able to do a quick search without having to identify it first in-game.
Obviously the items themselves should not be types, but rather instances of Item
.
Is currently:
General's Tan Do Li Ga
but should be
The General's Tan Do Li Ga
=> ensure backwards compatibility
Just a little quality of life enhancement would be to clear the search without having to select all and delete. This would either replace the current search
icon or be next to it. As I see it, search
button doesn't have much functionality given it automatically searches.
GrailManager
and PartyManager
or quite similar.
We could try to introduce a common base class for it.
So you can easily return to the login site.
As per title, an option to display treasure class value near each item's name would be welcome, for example:
Gull (TC3)
Tyrael's Might (TC87)
Since TC is somewhat an indicator of the rarity of each item, this could easily add some excitement when inputting our last finds.
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.