jbccollins / destiny-loadout-builder Goto Github PK
View Code? Open in Web Editor NEW๐ฎ A tool for creating optimized loadouts in the video game Destiny 2
Home Page: https://www.destinyloadoutbuilder.com
๐ฎ A tool for creating optimized loadouts in the video game Destiny 2
Home Page: https://www.destinyloadoutbuilder.com
Pull to refresh is fking annoying. Disable it. Probably this: https://stackoverflow.com/a/47709903
Maybe just google analytics for now. But check out what vercel offers.
shaders and ornaments for all things than accept them.
Stuff like masterwork assumption and minimum gear quality should go in there
Just the exotic perk description
Right now there is a bug where if you make a more restrictive selection after paginating you may just not see any results since you're not on the first page of results.
Perhaps control this with a setting? Where we can show the user everything or only the stuff they actually currently have access to.
This isn't a big deal since it's still selecting all the correct subclass icons but it is a bit disorienting to see them shift around when you click "sync from equipped". Would be nice if DLB could just send them to DIM in the same order that DIM will render them. But maybe this is a DIM bug. I'm not entirely sure.
The application should be able to set the store state based on url params. If the urls get really long maybe we need to do a tiny url like DIM does? Not sure how that would work
It would be super awesome if the URL could contain desired stats as a priority list and the loadout builder would attempt to get as close to those stats as possible.
Some finisher mods can't be applied at the same time, for example
For example halloween masks or iron banner armor
This would only apply to certain exotics, mods, aspects and fragments I think. It might be tricky to do this in a way that isn't confusing to the user.
Maybe ghost mods too if possible. And shaders for all.
Error logging is really needed in this early stage
Probably default this to legendary
The computational expense of armor processing can hang the application for a bit as it executes on the main thread. It blocks all actions like button clicks, hover effects, user input, etc... Move it to a web worker.
Idfk how to tell what is and what isn't 1.0 armor
Force this slot to contain "artificer" armor, or "iron banner" armor or "plunderer's trappings" or "king's fall" armor.
There are a few categories here:
Perhaps we can exclude raid armor from this dropdown if we just let the user pick from an extra socket dropdown for raid mods. We would want to disable either the entire socket when the user has no raid gear for that slot, and/or disable individual mods from each raid if the user has not acquired them or if the user doesn't have gear from that raid for that slot.
Depending on if the +3 for artifice extra stats has a cost we may or may not really need to prioritize including this. If artifice extra stats have no cost then armor processing can just factor that in for each piece and the user doesn't have to think about it at all. But even then.... the user might want to enforce artificer armor.
I have no fking clue how to force IB armor since some of it has perks (I think?) and some doesn't. Might just be a hardcoded list of hashes/names/
This is probably more tricky than just sorting by wasted stats to find the zeros. Sometimes using a more expensive major mod would get to a zero but the armor processor will always prefer minor mods currently.
D2 allows the user to equip mod combinations that make no sense. It would be nice to warn the user if they have selected any of these combinations. This is probably not an exhaustive list. Make sure to write this logic in a generic an extensible way.
Known Negative Combinations:
Known Useless Combinations
Known Invalid Combinations
Relevant spreadsheet: https://docs.google.com/spreadsheets/d/1WaxvbLx7UoSZaBqdFr1u32F2uWVLo-CJunJB4nlGUE4/edit#gid=1925335732
Discord discussion: https://discord.com/channels/296008008956248066/296008136785920001/1054495928293269525
Questions: Do artifact mods like triple reloader or unflinching stack three times or only two?
honestly this might be expanded in scope. Warning about other stuff too. Like equipping contraverse hold when on dawnblade. Perhaps it makes sense to create a warning level system and classify certain dumb things as different warning levels. Let the user select the minimum warning tier they want to see in settings.
I have seen situations where the "grey" color in the desired stat selector is inaccurate. Nail down why this happens and fix it.
Stuff like Fragments, Aspects etc are all made by hand. It may be possible to do this programmatically like how the mods are done
I was a dumbass and thought making the selectedFragmentsSlice require passing an elementId and a fragments[] was a good idea. Simplify this reducer to act like every other reducer and just accept SelectedFragmentsState
as the type.
E.G. Contraverse Hold has +2 Recovery intrinsically
Probably a multi-select that limits the user to 5.
Allow users to see all possible builds
I'm not sure if DIM loadouts support this. I'm also not sure if they support putting major/minor mods on specific pieces. Some users will want that level of control though and it would be nice to come up with a way to specify which pieces of armor will have which stat/combat style mods.
Is this related to really old exotic armor?
The user should not have to pick any subclass, aspects, fragments etc if they don't want to
Maybe right next to the middle armor mods?
For stuff like mapping classes to subclasses use the reusable plug set hash
Relevant Discord discussion: https://discord.com/channels/296008008956248066/296008136785920001/1055398285373866014
Does this force the usage of certain fragments/mods?
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.