Comments (6)
Agreed, the complexity of the actual drop table is higher than what the parser currently uses (just grab all possible drops, adjust the weights per table and calculate the final possibility).
What you're suggesting does seem to be the better idea, however it requires 2 fundamental changes in the current setup:
- Provide input into an equation of some sort from the website through an input field
- Provide a mechanism from the parser to translate the equations in the database to easy equations for input from step 1.
I agree it should be the end goal of the parser, however it will take me some time to run through the other issues first. The current priority is on getting the attributes/statistics per item to match what's in-game, as I seem to have hit quite a few exceptions after the last big update.
Thanks for the suggestion though, it'll help me get on track quickly after sorting out the current issues.
from tqdb.
I wouldn't think you would need to update the website with any sort of additional user input - unless you wanted to allow website users to toggle the filtering? I was just thinking that the parser would check whether the item's level fell within the ranges defined by the loot table's minItemLevelEquation and maxItemLevelEquation, and if not, omit the item from the index built for the loot table's drops, so that bosses using that loot table would not be listed as being able to drop the item on the website.
Even with that limited scope, I agree it would be tricky to get this to work, depending on how complex the equations present in the database attributes are. Seems like you would have to write code for parsing the individual equations, or attempt to just evaluate the mathematical expressions directly as code with Python's eval function (lol).
Definitely understand if this isn't a priority though. Cheers!
from tqdb.
Since I've worked on getting the loot tables expanded and added some more sources to it, it's time to make this a priority now. Work on it will begin now and it should be included in the next release.
from tqdb.
You were absolutely right about the min
and max
levels capping what can be dropped.
This solves the initial problem, we can now:
- Parse
minItemLevelEquation
andminItemLevelEquation
as it seems the only variable those tend to have isparentLevel
which can easily be grabbed from whatever the parent is. - Remove any items outside this range.
The second problem is the following, the bell curve weights are applied based on the targetLevel
. For example, looking at the armband_e01.dbr
file in the loot tables, we have:
minItemLevelEquation,36 * 1
maxItemLevelEquation,47 * 1
bellSlope,200.000000;200.000000;200.000000;100.000000;100.000000;100.000000;100.000000;100.000000;100.000000;100.000000;100.000000;100.000000
targetLevelEquation,((20 + parentLevel) / 2) * (1+(averagePlayerLevel / 75))
The bellSlope
values are mapped for each level between the min and max, so basically:
Level 36: 200
Level 37: 200
Level 38: 200
Level 39: 100
...
Level 47: 100
The targetLevel
sets the starting point for the list above. If the targetLevel
comes out to 39, then 39 will start with 200, and so on.
For now I'm going to just run the min and max and remove the initial batch of items that can't even drop and then I'm going to think about how to handle step 2.
from tqdb.
@giffsapros I have deployed the new data set (which has implemented the first step, removing items outside the range) to the staging environment here: https://staging.tq-db.net/monsters
You can browse around and see if this matches up better with what you found. The second step, which will apply the weights as I've described above will be implemented soon as well.
from tqdb.
The second step has also been implemented, is currently live on staging and will be pushed to production with the 1.2.1 milestone for the parser.
from tqdb.
Related Issues (20)
- Incorrect sprite HOT 10
- Missing translations HOT 3
- Level requirement equations
- Missing items
- Torc of Ancestors - no public beta 4 nerf implemented HOT 1
- Loot table empty for Agent of the Order set
- Parser running error
- "Shimmer of Hybris" missing texture & info - provided
- Enternal Embers HOT 1
- No chance of dropping loot from Secret Passages
- Can you add filter by game difficult: normal, epic, legend?
- Direct URL to database items return a blank page HOT 1
- Missing loot tables from Eternal Embers
- Typing in "ex" in monster search crashes the TQDB site
- Database acccess
- Help : Item Stats Do Not Match
- Basic Filter option?
- add a new loot drop ..
- Monsters tab is broken HOT 1
- add new filter ...
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tqdb.