#tooldev-general
1 messages Β· Page 95 of 1
$.ajax({
url: 'https://api.pathofexile.com/public-stash-tabs',
dataType: 'json',
type: 'GET',
// headers: {
// 'Access-Control-Allow-Origin': '*'
// },
}).done(function(response) {
console.log(response)
});
I using simple request not funny to me ^^
Pretty sure you'd need a proxy to get through the CORS/same origin policy of any modern browser
@grave wren why to coinlore api i dont need proxy and i dont get error CORS ?
damn
cors lets APIs choose what they allow and what they don't
so that API deliberately allows you to access it, and poe's deliberately blocks it
that's just what CORS is for
@steep zephyr You need to read up on what CORS is. In short, it is a mechanism that browsers use to let a target site declare what other sites may make non-trivial requests to its resources. The PoE API doesn't have any CORS headers, and as such, doesn't let anything client-side in a browser access it.
As the error says -
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://api.pathofexile.com/public-stash-tabs. (Reason: CORS header βAccess-Control-Allow-Originβ missing).
The API is intended to be consumed from a service, not from a browser.
A web service, a standalone program, whatever that's not actually running on the client in a browser.
Ok so i need use node.js or php to use an public api ?
CORS is a client mechanism, it's the browser that queries it and enforces it to prevent rogue JS to do naughty things.
You need to do it "server-side", yes.
While at it, also note that the API is rate-limited and the limits are provided in the headers of your response.
Oh ok usually i use server-side if api use oauth key..
I go using Node.JS thanks for answer @worthy cape π
Most of the API endpoints are public information and are rate-limited by IP. Their OAuth would let you retrieve some more specific information about a player, I believe.
Ok thanks π
So what are you building? π
Nothing very original I would like to create an application to see the price of each item
A very common use of the API, then, shouldn't be that many curveballs.
Trickiest thing is figuring out how to use the change IDs to get more and more information.
Im Front-End developer is for it is to try to improve what I have already seen
@worthy cape What is your app ?
poe-rs, Rust library to read many of the file formats stored in the GGPK
Also working on a companion tool to that to display some of them visually, like hideout layouts, meshes, etc.
Ok nice
https://prnt.sc/ph1ehy my actual project @worthy cape
Hello everybody.
I'm trying to work on a program to scan different currency ratios and perform mathematical operations.
However, I'm very uncertain if getting data from all of the stash tabs is a feasible solution.
poe.ninja and poe.watch both have public apis that track currency prices, would those work?
Consuming the river is definitely doable, the question might be if you can make sense out of the listings.
My current issue would be this
If there is around 92.40 TB of stash data, how am I supposed to analyse all of it?
There isn't. It's the data that poe.ninja has gone through over 3 years.
Oh. So if it looks at the same stash twice, it gets counted twice?
Yes
And that includes almost all updates to all public stash tabs over all leagues including standard since 2016
The full current river is much less.
And how fast is it to go through all of the stash tabs? I'm guessing that that would take upwards of a day
Yeah probably something like that
That's what it used to take back when I was experimenting
The river should be less than 100 gb. Probably quite a bit less.
But here's the program that I'm thinking of. I'm not sure if analyzing all of the data or all of the current listed sales will be easier for this.
I want to make a program to analyse the different rates between each type of currency.
Using some inferential statistics, I want to be able to determine the 95% confidence interval of the population based on a sample size
Sounds like it's detailed enough to warrent going to the river yourself
Is Poeninja only looking for currency items that are sold from currency stash tabs, or from regular stash tabs as well?
Both
Damn. Looks like I have a lot of catching up to do regarding JSON files π
I've only really used SQL and XML before.
@fickle yew wait so you're counting "sold" items, not listed?
@simple ravine no, but that wasn't the question.. The question was about normal tabs vs currency tabs π
I think I might have taken the sold part a bit too literal π
@fickle yew Oba's Cursed Trove is listed as a Primordial Blocks map on poe.ninja (should be Underground Sea) https://poe.ninja/challenge/unique-maps
@chrome topaz can you please change the parsing on poe.trade for the silver oil tag, i listed my chaos for silver-oil but people are messaging me to sell me silver coins
what's spc meant to be in the passive data? wiki says it's "class starting node" but the data for the starting nodes don't seem to use it for anything
is it just an obsolete field?
oh nvm found it
@carmine merlin your fork seems to have broken dps sorting for minions (blink arrow), the OG pob works fine in that regard
Hmm thatβs an odd bug. Will have a look at it tomorrow and see what I can do
Can anyone help with this question? https://www.reddit.com/r/pathofexiledev/comments/dg0pkc/gggapi_result_how_to_tell_where_mod_value_is_in/
Going to have to do text parsing
That sucks π¦ I wonder how poe.trade or poeapp do it.
Yes, Path of Building and the wiki have mod ranges on their items. No mod ranges on items from the APIs, just the roll.
Keep in mind path of buildings roll ranges are quite outdated
best to use the wiki for unique item roll ranges.
or poedb
the API gives the ranges on the explicit mod - just not the actual roll of the item in the listing
https://pastebin.com/qXexfDAE look at line 116
now non-unique items will likely be different. BUT that's a problem for the future
thanks for your help!
Oh just to be clear @quiet smelt I think you're using a different api than poeapp or poe.trade
Do they get access to the cool kids API?
no they parse the river
youre using the official trade website api from the looks of it
yeah - I didn't want to try to mess with the river of data. I'm just making a basic visualization tool of prices vs stats.
Wow - thanks for the reply! I just messaged you on reddit!
Its definitely looking like there is a large amount of work to get the right stat_ids then those ranges
For the official trade api it shouldnt be that much work.
On third-party trade sites, you cannot correctly determine mod tiers, such as with %rarity prefix + suffix
@quiet smelt just use this
https://www.pathofexile.com/api/trade/data/stats
The best you could do in such a case is list all possible combinations
@golden bane note this is not the case for the official trade api
which is what they are using
iirc its always been on the official trade api
Ah - so I could map the value I parse out to the range using the stat id e.g."explicit.stat_3299347043"
iirc Novynn added it later on request
ah I see, well that's nice of him π
@quiet smelt yeah, just use the explicit.stat look up to get the values
btw @frigid nova, thanks for the heads up about incorrect/outdated mod ranges in PoB
Found one already
yeah, although @carmine merlin fork might be more up to date
Already checked, guess I'll just PR on both repos once I've processed all
ah yeah
might be nice to just have a script which pulls off the wiki
into whatever format pob uses.
thanks a lot all for your help
That's actually something I thought about implementing already
Just found this, really useful https://github.com/ForsakenNGS/PoeData/blob/master/resource/wikiTableQueries.json
I was pretty sure that all the mod ranges in POB were up to date as I know that it pulls all the mods directly from the content.ggpk file. If there is one that you can find that isnβt the right range, can you let me know and Iβll have a look into it
There is no link of uniques to mods in ggpk
and sometimse they make a totally new mod when they want thinsg to stay legacy
so you have to change that by hand.
Ahh yeah. Those are all hand done
I think abyss jewels aren't up to date for sure
Ghastly rolls look too high from just my memory
the flat damage ghastly rolls are correct from a couple of searches i just did. all the mods and jewel rolls were updated in a patch at the start of the league after abyss jewels were nerfed
How odd... I can't see the last post about 3.9.0 from @remote yoke in #old-game-news in any of the Discords that supposedly follow the channel.
There's UX suggesting that I should Follow the channel, but in my server there's still a webhook for it.
Guess that it might be Discord that's having a moment?
That was my fault. I forgot to publish it :P. Was preoccupied.
stats dont har tiers, mods have. what you see in the river, and on the item in game are stats, which can be 1 or more stats.
(regarding the parsing discussion above)
A-ha! There it arrived.
@simple ravine How do I unscramble an egg? I put in salt and pepper from multiple grinders too.
You don't. You make an omelette and call it a day
@fickle yew Will App Center have web stuff in the future, or is that completel out of scope?
@simple ravine It might. October is my last month at Microsoft though. Going back to the startup world.
oh daaym, cool
you will have to tell me more about that.
brave to jump off the safe bandwagon in these times, what will u be doing?
Established startup not too risky. They stole me back. I'll be working doing stuff that hopefully impacts across 6 eng teams.
That's my role anyway π
But they grew from 50 to 200 in the 2 years I was away, so will be interesting to see how it changed
woah, it is 2 years ago now? it feels like it was a few weeks ago π
Time flies
Yeah looking forward to it. I wasn't actively looking to leave ms but the offer was unique and exciting.
@fickle yew where are you based out of?
Denmark
Any one know how to decode POB strings in python?
the PoB strings when you export a character - usually get pasted to pastebin. I want to parse out the items in the build but I can't seem to decode the thing successfully
I know its base64 base encoded, but I don't know what other transforms are happening
maybe @timid hemlock knows
Have a look at _fetch_xml_from_import_code
FANTASTIC
I already have this library for interacting with PoB builds in Python
i'll look it over. great work.
It's even on PyPI
i see that. this is so cool. pip install pobapi here I come!
Oh neat gotta check if I can contribute or if you do everything I am doing already
@golden bane do you want to keep your models slim or do you want to enrich the data e.g. https://github.com/poediscord/poediscordbot/blob/master/poediscordbot/pob_xml_parser/models/gem.py translating internal names of stuff pob does not translate in the xmls?
Wait, does it talk with headless?
xml parsing onle for now
didnt find a benefit of talking with headless for now
toyed around a bit with it but its way too heavy for simple build sharing here on discord
@grave wren Thank you, I will add the additional skill mappings
There are a lot more than in poediscordbot
hm i only did add those i've thought of tbh, was mostly asking because some prefer to import things in their original form and then transform on the go π Got some pretty crude models in the bot too, especially in terms of items
As of now, pobapi only looks for nameSpec, which is empty for non-gems, so I certainly have to change something.
Somehow I thougth about excluding skills granted by items from the skill_gems property, but not about naming them
ah i see, yeah in theory you probably want it to have their own class for a generic api so you can differentiate them
Currently they are in skill_groups but not skill_gems
Own class might be a good idea though, as them being Gem makes little sense.
Proposal: different class with same fields to allow duck typing
i'd prolly suggest an interface/abstract class that represents an ability which can be a gem or any other ability gained from something
Hideout decorations are in the ggpk files somewhere right? It should be possible to see if any new ones were added in blight?
I usually just check the list on poedb
Hey, I'm trying to learn to use the POE apis, but it looks like some aren't documented? For example, how to get a character? I'm using the list here: https://www.pathofexile.com/developer/docs/api-resources
Is there any way on the poedb list to see which league a hideout doodad first appeared?
I don't record that
@floral notch PathofExile API https://app.swaggerhub.com/apis/Chuanhsing/poe/1.0.0
Join thousands of developers who use SwaggerHub to build and design great APIs. Signup or login today.
Ty!
@fast citrus if one has the old GGPK files, one could technically just compare whatever DAT tables there are, assuming that you still have versions of the viewer that understands the old tables
Yeah, I gave up haha
Might not correlate with what's released in a league either, many of the new hideouts have been in the game files for ages.
@fast citrus With some caveats about that some content exists for ages without being enabled - this is the difference between HideoutDoodads of 3.7.5c and 3.8.1e: https://gist.github.com/zao/e957ff65ebc649b9b47fd03b4acd8b42
β€ ty @worthy cape
Oh I was pretty sure I knew what they all were π
This doesn't include old doodads that might have gotten new variations, not sure if that happens.
No variation differences, it seems.
In PoB's export XML, there is at least one item that grants a skill that has a non-empty nameSpec: Abberath's Hooves.
I wonder if this has something to do with the wording. In PoB, it says "casts", but in the game it says "triggers".
Update: it does. I've made a PR to PoB.
Sounds good enough. There is no official API for it and I also don't know of anything else 3rd-party
@polar island I found a bug π
it's partly my fault, but other items are properly determined
If you use the url encoding feature of an item, and you don't specify the type "Gloves" it looks them up as "Armour: Body"
np π
@polar island nice, if you add me as a friend I can send you to the page where there are tons of test links for these things, I found a few other issues, like sockets not being picked up, and quality not being picked up
I have gloves working, but now the base doesn't show up π
Excluding gilded fossil items, is it possible to tell the exact vendor value of an item? Is this somewhere in the data files?
@earnest radish Ah yeah those are a pain π I'll see what I can do about it..
Thanks for the thorough report
@broken cloud https://pathofexile.gamepedia.com/Vendor_recipe_system#Single_Item_With_Mods - Can't vouch for accuracy but it might be a starting point?
Sweet, thanks
starting poe dev
Is there a Bot for Discord that can create a preview of PoB builds like the PoBPreviewBot on reddit does?
i found FWidm/discord-pob on googke, but it hasn't been updated since 3.7, so likely not working right?
edit: plz @marble rivet if anyone answers
is there a npm library for getting stash data from an account with poessessid or whatever its called
@marble rivet have you looked into zana bot? https://github.com/xKynn/zana
@spring harness None as far as I know of
BTW, you'll want to URI-encode accountName and characterName
@fast citrus i did and thought the discord i'm in is using that...maybe renamed...i will check on that. thanks
I am in the support server and I think someone mentioned the bot was down recently, but it looks like what you want
thanks briansd
i've made a small tampermonkey browser script to filter characters on official site - it adds 2 buttons with dropdown checkboxes list, which let you filter characters based on class and league.
https://gist.github.com/alt0172/22ba9c71563e3860db1e5841e5fd1e0e
it works, but sharing it is a bad idea because of security reasons (installing custom scripts on site where you can spend points is risky), right?
New dev in the house. Didn't realize this discord channel existed. Fun to see so many familiar poe developer names in here. I'm going through the backlog of chat here but seems like there's some great resources. Cheers!
For my first "noob" question π :
There are certain affixes that are mutually exclusive. I'm not sure if this only applies for crafted mods. One example is: you can't craft movespeed on boots if it already has movespeed. You can't craft flat life on something if it already has flat life; however, you can craft hybrid life on it. One more example is staves: you can't craft +2 levels to socketed support skills if it has +3 to all cold spell skills, however, you CAN craft that even when +2 to all spell skill gems exists.
So I was curious exactly how these rules are decided and whether these mutually exclusive groupings have been prepared anywhere already.
i believe this is governed by mod groups/mod families (same thing but can be referred to as either depending on who wrote it). im by no means an expert on this but for that stave example, +# level to socketed support gems is in the group "IncreaseSpecificSocketedGemLevel" and so is +# level to all cold spell skill gems. +# level to all spell skill gems, however, is in the separate group "IncreaseSocketedGemLevel"
i just happened to look these up on the wiki; as far as a more organized/digestible collection of this information i'm not sure
Ah okay, cool
Is there an api or (json?) data file that has the deadlisting already?
I can't recall of the official site lists that under its metadata stat endpoint
poedb already has most of the affixes categorized
How do I send the POESESSID in a get request with angular
customHeaders.append('myHeaderName', 'myHeaderValue');
@spring harness Send it as a cookie.
POESESSID: this.poessForString
};
this.requestOptions = {
headers: new Headers(this.headerDict)
};
this.http
.get(
"https://www.pathofexile.com/character-window/get-stash-items?league=Blight&accountName=qqazraelz&tabs=1&tabIndex=1",
this.requestOptions
)
.subscribe(data => {
this.stashdata2 = data;
});
console.log(this.stashdata2);
}
@cosmic saffron does poedb provide an api to get at those?
getting 403 but the header is set in the electron angular app
im looking for my stash items
like a currency ciop style thing in angular
I see that PathOfBuilding actually has group listed for certain things in ModItem.lua
@inland kestrel Gladly there is an API for poedb
I guess it's something I could scrape once and persist
Is eps1lon an active dev here? Looks like he had something similar at one point
@languid tulip where'd you find those item group names? I'm curious what the one for "# to level of all Cold Spell Skill Gems" is, since it's a newer one (I believe)
actually, there is api for poedb
Really?
you can listen xhr, for example in page https://poedb.tw/us/mod.php?cn=Bow there is xhr https://poedb.tw/us/json.php/Mods/Gen?cn=Bow
Do you know when this was implemented?
about 3 month ago
Good, then my HTML parsing last year was not for nothing :)
https://github.com/brather1ng/RePoE/tree/master/data also contains mods.json
@inland kestrel i found them on the individual pages for those modifiers on the wiki. https://pathofexile.gamepedia.com/Special:CargoTables/mods has a more broad cargo table for mods. tbh i dont know my way around this stuff very much at all, these other people can probably provide you with more useful info
Oh sick, there is a poedb.tw api
I was looking at the brather1ng/RePoE stuff earlier. It doesn't have some of the newest stuff. Looks like I would potentially need to datamine it myself? idk
@inland kestrel which stuff does it not have which you're looking for?
"# to level of all Cold Spell Skill Gems"
"GlobalColdSpellGemsLevel1_": {
...
"stats": [
{
"id": "cold_spell_skill_gem_level_+",
"max": 1,
"min": 1
}
],
"type": "GlobalIncreaseColdSpellSkillGemLevel"
}
{
...
"string": "{0} to Level of all Cold Spell Skill Gems"
}
],
"ids": [
"cold_spell_skill_gem_level_+"
]
}
@inland kestrel was there a specific instance of that mod which wasn't in there?
What the heck! I'm so confused. Where was that found?
translation to stat found here https://raw.githubusercontent.com/brather1ng/RePoE/master/data/stat_translations.json
stat to mod found here https://raw.githubusercontent.com/brather1ng/RePoE/master/data/mods.json
I had searched for it via https://github.com/brather1ng/RePoE/search?q=Level+of+all+Cold&unscoped_q=Level+of+all+Cold
Thank you @frigid nova btw
I'll get that fixed @granite sable
@chrome topaz thank you. btw there's a typo in the mod list Denoted service of # dekhara in the akhara of **Asaneth** Passives in radius are Conquered by the Maraketh, it should be Asenath
hi
How would I get the price for currency pairs? For instance, seeing all offers to trade chromes into fusings
What API would you recommend I check out?
@fallow zinc You could query the whitelisted trade sites if you're looking for the actual open orders. If you're just looking for general exchange rates then you could use poe.ninja to get its indexed rates and quick math it yourself
nah I need it to be up to date... do you have a recommendation for a trade site to use for this?
preferably a fast one with a good api
the official one requires me to query actual stash tabs though, right?
Well, I've seen a wiki page for the public stash api. That seems like what you'd want if you want to write your own indexer.
I believe that, unless you're one of the very few white listed sites, the stash stream info that you're provided is at a slower rate
Some trade sites have an api (that often isn't documented well) that you could try and take advantage of
This gives an idea of that: https://www.reddit.com/r/pathofexiledev/comments/7aiil7/how_to_make_your_own_queries_against_the_official/
For you specific use case, /api/trade/exchange/Blight would work (for Blight sc)
{"exchange":{"status":{"option":"online"},"have":["chrom"],"want":["fuse"],"minimum":10}}```
You'll get back a set of hashes
I'm actually trying to do a very similar thing to Maloik
Is it also possible to filter by ID instead?
Another query will get you a set of listing results
So instaed of "have":["chrom"],"want":["fuse"], couldn't I do something like "have":[id:="7"],"want":[id:="2"]?
I'm not sure. I'm just going by what I currently see
If not, is there a list out there where you can get names based on the ID?
thanks for the pointers, I'll check that out
No, I didn't see that link yet. I just came into this channel (and I can't scroll up with this terrible WiFi) π
Oof π
you mention a wiki page... do you remember where to find that?
I only saw that you linked this one
oh that one yea that is very very sparse on info though π
Yeah, exactly 
How do you query this exactly? I'm trying to do
https://www.pathofexile.com/api/trade/fetch/query=%7B%22exchange%22:%7B%22status%22:%7B%22option%22:%22online%22%7D,%22have%22:[%22chrom%22],%22want%22:[%22fuse%22],%22minimum%22:10%7D%7D
But I jus get {"result":[null,null,null,null]}
Yeah, you're doing that wrong
It's a two phase process
POST that json object to https://www.pathofexile.com/api/trade/exchange/Blight first
in fact... I'm not going to re-type it out
Just literally look at the link I gave you above (the same one you pasted above as well)
anyone knows whats default alpha numbers for
SetTextColor SetBorderColor SetBackgroundColor
in filters
hey there, working on a tool that needs pricing data -- is the best option to just hit the poe.ninja endpoints? poeninja not having any docs on it or anything makes me hesitant to just spam their poor website
i saw a note about poe.watch as well who seem to have an exposed API for public consumption but idk how up to date or reliable it is
any input appreciated :~)
yeah that's what i said π
their data is different though, which isn't surprising, so i guess im just wondering if there's consensus on which is better? assuming again that poe.ninja doesnt mind the usage (i assume the dev doesn't, since exilence seems to use them)
I've used both in my tool, currently poe.ninja tends to be much more reliable for smaller items but can lag behind a few hours of big market movements. poe.watch is more sensitive to those movements, but has the occasional hiccup and small currency tends to be overvalued
last i checked, poe.watch also has a richer api, giving this like price history and change in the last week, compared to ninja
thanks π
a very good comparison π
hey, if you wanted to make a list of poe tools to launch with game (app is electron based), how would you make this list? ipcMain/Renderer, or config-store -> save tool paths to config -> read and make list from config json? Or something different?
(yes, it's simple game launcher with variable amount of tools)
didn't someone already make exactly that?
Wouldn't use such a thing windows shortcuts can do what I want them to do
@grave wren I feel exactly the same but I didn't want to smash dreams
and that is in fact exactly what I do. I don't have many things I run, just a directory with shortcuts to them, trust-worth... easy to update
Okay, I'm interested @earnest radish , why all the rmdir? Just keeping the house clean or something more?
seems reasonable
Where can I find a list of the special affixes that only show up on delve drops in certain nodes. For example, an int/dex body armour can have Enemies can have 1 additional curse but I don't see that listed on https://poedb.tw/mod.php?cn=Body+Armour&an=dex_int_armour
Ah, maybe that's what I was thinking of but couldn't recall
Yeah, same with incursion mods currently to my knowledge.
No
only boots, right?
is there something in that listing you shared above that dictates it's a chest affix?
I'm mostly interested in the mods that ONLY spawn on items from a certain location (e.g., certain delve nodes or incursion). Specifically not the ones that are craftable
Okay cool, I can poke around in there too later when I get home from work
@inland kestrel you wont find that info in repoe to my knowledge
but it might be buried in the content.ggpk somewhere else.
okay. Looks like I need to bone up on how those get parsed
I think https://poedb.tw/mod.php?cn=Incursion does a good job at showing the incursion-only mods. I'd like to find the Delve-only mods (not fossil crafted). And then I'd also like to learn how to know what item slots they show up on
Yeah, as xanthics has pointed out getting a list of them wont be hard
finding what bases they spawn on is a mystery
ok. but presumably it's in content.ggpk?
π€·
yeah, here was another example for reference:
"Corrupted Blood cannot be inflicted on you" as a shield suffix
https://www.pathofexile.com/trade/search/Blight/7gbzglH5
That one is also explicit.stat_1658498488
that would make sense
meh, i'd love to look closer at it right now but I need to finish up one last thing for work before heading home π I'll see what else I can dig up
I think the best you can do with repoe is get a list of all Subterranean and Of the Underground, and then remove the ones which spawn from fossils. Even then you'll end up with legacy mods iirc
GGG's internal naming conventions are... interesting
I have heard from multiple tool authors they have many inconsistencies
Yeah, Zana is called "StrDexIntNPC" for example, because she is a scion ("StrDexInt" ingame) NPC
lol
My favorite example is when they pick some random internal name for a skill and it bleeds out into the game
like when they used the internal name on the helm enchant for purifying flame
so no one knew what it did
Icicle Mine was or still is using Freeze Mine image
One could hypothesize a quick refactor would fix these issues π€
well, I query poe.ninja and poe.watch instead and thank them a lot for much better interface
Another good one: {"OnHitWhileCursedTriggeredCurseNova": "Elemental Warding"}
Frost Fury is so much ... contradicting
well ... I am doing some filter tool .... haven't touched enchants yet
I like it when they name a league after an already existing skill.
Anyone familiar with /character-window/get-stash-items? Trying to figure out why, even with a public account, I can't call it to get stash data. Getting Forbidden.
Trying to get a tabIndex that is set to public as well
@floral notch You need to submit your POESESSID as a cookie together with your request/session
And that sessid needs to be a valid login for the user's stash i'm querying?
Yes, of course
I guess I expected you could view a public stash without needing to be auth'd, heh.
You can view public items on the trade APIs
I guess I understand now why poeprices.com works the way it does
I wanted to build a tool to let you find your valuable div cards, but it seems like they'd still have to copy+paste their json in
Okay, I'm not sure if that's the right place to ask, but... Path of Building seems to be crashing my GPU drivers, at least that's what windows' Event Viewer says, did anyone else encounter such problem?
@floral notch You can still do that, have a look at https://www.reddit.com/r/pathofexiledev/comments/cb9jzy/poe_auth_service/ete1krp/
Ah, im guessing thats the filterblade stuff too
Yes
I noticed they have oauth to save
Would be pretty neat to have a web application that finds valuable unused stuff in your stash
is anyone using angular/ Node for get requests for get-stash
ive been stuck trying to get data from it with setting cookie headers
to the point I might just use a python backend to do get requests from pythons request library
Whats the error you're getting?
403
its not even sending the cookie in the request
but I have it set in my electron angular app
with ng-cookie-service
and its not set/seen in the network inspector tab in chrome?
anyone doing angular work for stash indexing. cant seem to figure out how to send a response with trhe poesessid
Did you try a local express (or similar) proxy for the cors issues?
I'd not trust some third party proxy to work flawlessly hosted on heroku
its only for dev
when i use heroku
im using electron and it messes with request weird,
im getting "Refused to set unsafe header 'Cookie'
which lead me down a rabbit hole of how electron uses ipc to do it, and electron has it's own net get thing
but that didnt really lead me anywhere because I got the same unsafe cookie thing
never toyed around with electron, not a fan of it
Exilence devs are too clever for their own good. Tool detected me mispicking the correct Client.txt twice, once from an old backup and once from a Standalone installation.
That's pretty good: predicting and implementing error messages before someone even does it.
Anyone knows which items fall into Class "Microtransactions" in item filters?
anyone knows where I can find all uniques description in the content.ggpk ?
@golden bane thx
Not sure if the PoESkillTree dev is in here or if someone else happens to know but... why is Band of the Victor on the unique blacklist? π
My guess is because Band of the Victor was originally intended to be an event prize for a PvP season that was ultimately abandoned.
That's correct, it could never be obtained
@woeful sphinx i've been checking out repoe and reading up on your comments through the various issues that were submitted. Does all of your data come from pypoe and the ggpk? I didn't notice unique item info in your json files and am wondering if this is becuase they are no longer available via the ggpk or if it isn't yet set up to pull that data out. Thanks mate
It's no longer in the ggpk
@inland kestrel I thought it would be pretty obvious from my linked issue that the unique item data will not come back
See the link above
... was from 2017 so I wasn't sure if there had been any more recent updates. Thanks for confirming
Why would someone stop datamining uniques before release now?
Parsing the entire dataset seems like the biggest task
@primal schooner the problem with pricing shaped/elder items with ai is:
a) people themselves are shit at this so data in is garbage
b) prices depend on the combination of mods, so the ai would need to be able to evaluate synergies
Unfortunately, the first hurdle you have to overcome lies in the fact your dataset is based off prices. Not sell prices
well, not really, because it only needs to evaluate it against items that are already up there, or return that there is no like items
What you need to overcome is actually monitoring items that sell, so watching items that get priced, then after a bit leave the market, implying they probably got sold
if you get a watcher's eye w/ 3x hatred on it
once again, how do you determine like items
you just see if there are any other with the same affixes
Thats the next task and, whew, that is incredibly difficult
you'd need to parse the affixes
and there are two items with the same affixes
the same way you'd look it up manually
one is unpriced, the other is listed for 100ex
so you jsut return a count and avg
when you look up items manually, you decide which mods to exclude
total 2 items seen for a avg of 50x
vs seeing 25 items w/ an avg of 5x
or 100 items w/ an avg of 10co
Consider the following:
Boots with 30 move speed, life, dodge chance, and 2 resist
Boots with 35 move speed, life, 3 resists.
How "like" are these two items? Are they alike? or no?
you have the data and the evaluation, you just need to write a bunch of if statements... basically
idk what boots have 35 move speed
but i want them
Thats like saying writing a novel is as simple as writing a bunch of sentences
well at that point you're just hardcoding in the weightings
and you'd have to update every other week
to adjust for the current economy meta
so, when I look up an item
Also whenever new affixes get added
I use some basic parameters
Also, its MUCH more complex than handling each stat in a glass box
See the thing is, some stats are VERY valuable when paired with another specific stat, but seperately they are both meh
base type is borderline irrelevant except on mirror tier items
so if you take a RARE/Ammulet/etc and then check affix 1, 2 ,3 etc
vs the dataset of rare ammulets / etc w/ affix 1,2,3
That will only scratch the surface
and then return a count and avg price
and wont give you a good actual concept of the real value
what do yo umean by real value?
because some stats are a huge goldmine when paired. Great example are weapons
If I get flat phys and flat fire, meh
if I get %inc phys and %inc elemental damage, meh
BUT
it doesn't matter
because people are posting those items for more
so the dataset already accounts for that
flat phys + inc phys, or, flat fire and %inc elemental, those when paired right are great
Your numbers will become flawed
Because they will get either massively inflated or massively deflated because some items have the pair and some dont
you don't eval against ones that are like
Your price you get from that algorithm isnt going to be "how much my item is worth", the output is "whats the ratio of garbage vs good items with some of my mods"
Which isnt necessarily a reflection of your items value because you dont know where on that spectrum your item sits
figuring out where your item sits on that spectrum between trash <-----> god tier is the hard part
you won't evaluate a pair of boots w/o +30% movement speed vs ones that do have it
So you are only gonna lookup items that have the EXACT same mods?
and how would the ai know that?
either you hardcode it in, which is a shitty solution
Thats like, 99.9% of the time going to return nothing useful
you just parse the affixes
or the ai is intelligent enough to know that movespeed is valuable, in which case you have solved general ai, congratulations
the vast majority of the time you are barely going to get any results
thats waaaaaaaay to fine tuned and most of the time you'll get back single digit results, most of which will be unlisted
why do you need to 'assume value' prior to evaluation
So right off the bat, step 1 obvioisly is evaluating which affixes are always garbage tier and can safely be ignored, so you get more results
For example stun threshould, light radius, stuff like that tends to be ignorable and you can pretty safely ignore those affixes right
boots with +30% movement, +life, +reist 1, and +resist 2 just need to fidn other mvmt,life,resist 1, resist 2 boots, return those values and take a count and avg
Then next up you realise you're boots with like, +5 life, are getting compared against boots with +70 life
you are just comparing like trials
once again, how does the ai know that
you jsut code it.
So you gotta go "oh, shoot, okay, I guess maybe we ignore any affixes below T4 or so?"
ok so your solution is just to hardcode all of it
so really you are the pricing algorithm
and the ai is just a glorified search bar
I mean "just hardcode it" is easy to say, but like I said, thats like saying "Writing a novel is just writing a bunch of sentences"
but you gotta know what to hardcode
that's all it is, basically. if it has X then find items w/ x
if it has XYZ find items w/ XYZ
well you could just hardcode every possible item 
return values, count > give user avg price
As I said, please indicate you read this, if you do a pure affix matchup lookup, you will get extremely few results and not enough results back to have reliable prices
Like, 6 results back, most of which are unlisted price
That wont be good enough
you could then add a weighting system
How do you know what weights are right?
that would be much more advanced, but not impossible
You gonna pick every single weight by hand? How do you know your weights are right?
You're on the path here, this is where AI comes in
See AI neural networks are a series of nodes, they take data in, give an output
so as you see more items w/ more of the same affixes having higher prices, you give thsoe affixes higher weights
the logic is not difficult
Let me tell you, whenever a client tells me "it shouldn't be hard" or "The logic is not difficult" I double their quote lol
Every time
i mean, it's really not. whether or not it's worth the time is always a diff story
Your quote just doubled again :p
if it was easy, why does literally every price check macro ever suck complete ass
do i want to spend the next 1000 hours of my free time working on this, and if so, how much of that time will i recoup costs for?
like do you think every single price check macro dev is an incompetent moron
Now what if I told you there was a proper way to indeed get those weights automatically, you dont have to enter them
because, there's no roi for a hobby
and yet openarl did pob for a few years on his own
the ability to monetize it is what drives it
and pob is actually good
Because as it turns out, there is indeed a powerful tool you can use to automatically calculate weights for multi-variable decision making
yeah because the guys spent thousands of hours coding a resource correctly
idk if or how he moentized it, but i'm assuming it was a hobby product
And then he got a job with GGG which was his RoI
there ya go
he literally is a PoE dev now :p
Anyways, I feel like Im saying stuff that delves into the actual solution for this problem and am not getting anywhere
if you have questions for a software dev that literally does stuff like this for a living, feel free to ask, but I get the sense you dont actually care too much and already have your mind made up that it is super easy
i'm gonna take a stab at it
My solution would be to employ a Tansigmodial, Linear Regression Neural net, so the simplest type, as well as an intial filtering layer of logic, so I only pass off filtered affixes that (might) matter to the neural net
Step 1: parse the affixes, "peel off" any garbage affixes (anything below T4, and all the straight up garbage ones like stun thresh, light radius, etc)
Step 2: My neural net would have a input node for every single possible "non garbage" afffix, so T1 life, T2 life, T3 life which each be a seperate input node
Step 3: I input 0 or 1 into my nodes, representing on/off for if the affix is present, or not
Step 4: I train against 70% of the dataset until I drop below a preferred error threshould, ideally 5%, then I test against the remaining 30%, and output to my console my Neural Nets spread of accuracy
Done and done.
To improve fidelity, I think I also would want to have open prefixes and open suffixes as well
do you think something like this would be able to handle shaped/elder items at all?
Sure, I could have Elder and Shaper also be input nodes
yes
but i mean shaped/eldered mods
since imo those are super hard to price
plus small dataset
well, assigning an intial price is not the objective
the objective of the service would be to evaluate your item against existing like items that already have prices
that's the easy step though imo
You will almost never find "like" items for good stuff is your problem, which is why using a neural net adds the plasticity that is required
This allows you to evaluate "close" and "similar" items as well
I agree
but I'd start with hard evaluation, and then move into range eval
because most of the time, the hard eval will get you enough info
I feel like everything I am saying is completely going right over your head lol
and focusing on the completion of 99% of trials is better than worrying about the 1% that will fail or shoudl be manually evaluated
i'm trying to take a step back and look at the system holistically
just hire child workers
@hazy wigeon imo a simple feed forward neural net is not the way to go here.
Also @primal schooner idea of hard coding logic for poe pricing is comical at best.
@frigid nova Someone should make a service that matches people like me up with people who like cleaning and pricing dump tabs.
(would unfortunately be against the EULA to account-share, I guess)
@worthy cape you are a godsend π
@frigid nova I think itd be a starting spot, then further refine the model towards improved fidelity, adding improved filtering to the data, which may involve some kind of feature bank algorithm perhaps.
step 2 just get good
Three quad tabs of junk and counting... π
vendor everything ez
I have quite a few thoughts on the proper architecture and set up. I got about half way through trying out a sign of life project - but unfortunately have been swamped with work lately. Any help is welcome - I have the dataset and the access to compute, so all I really need are the hours to prime the data
@worthy cape not really. if they put things into a public stash tab, it's just that public. you could create a webservice for ppl that would let you view a specific stash tab (they'd have to set a specific name for it) and then you could see what is in that tab
does anyone know why GGG services the non-public stash tabs at the endpoint http://api.pathofexile.com/public-stash-tabs ?
@primal schooner You'd still need to clean it and separate out the juicy bits, and identify all the things you haven't even bothered looking at π
(yes, this is all self-inflicted)
I mean, the only API service is a GET
and it returns ALL the stash tabs
so yeah, filtering it client side is ... less good
it'd be nice if they provided a POST api for stashes so that we could filter results server side
but alas, gotta work w/ what you got
Er, POST vs GET both can have filtering, the only difference is whether you should be filtering in the body of the request vs url segment filters
IE:
http://www.schoolwebsite.com/students?classroom=1f&gender=m
Is a perfectly acceptable GET request with filtering
Wow, looking at the item API, rather than simply serving an Id for each mod and a scaler value, they just serve the raw text of the mod
thats like... really unhelpful
doesn't that ability have to be avaiable on the server side though ?
Everything is defined server side, whether its POST or GET is irrelevant
POST vs GET is just one part of the header of your request
tldr yes they must support it on their backend
right, so passing a parameter is pointless if the API doesn't have any means of (code) using it.
Whether it is POST or GET you still have to define all your supported server side filtering, the POST vs GET part is irrelevant is my point
POST would be incorrect there though, POST is for sending data, GET is for retrieving data
POST would be used if I wanted to update the list of stash tabs by modifying the data in a stash tab
past the header data
I mean assuming following proper RESTful programming practices
either way, it's not supported
I was mostly just focusing on this statement:
it'd be nice if they provided a POST api for stashes so that we could filter results server side
Which implies that a GET request cannot achieve that, and a POST endpoint is the right call for that functionality
Both of which are incorrect. GET is still correct there, and GETs can filter, thats all I wanted to cover π
true
A core part of POST requests should be that they are Idempotent, and something like getting a list of stash tab data is very much not Idempotent, so GET is for sure the correct call
but yeah, it'd be nice if they had expanded API so you didn't have to replicate the DB outside of the POE service
Well looking at their output data, we already have some big issues I see. Everything is sent as raw text, rather than using IDs
So that leaves a lot to be sought already lol
and the endpoint is http://api.pathofexile.com/public-stash-tabs
and it returns ALL stash tabs, public or not
Instead of:
Flavor Text: "Actual literal raw flavor text"
Id prefer
Flavor Text Id: "xa91b38gf42c59f34d675c436b"
oh for all the individual items?
I mean, I dont mind that part, sending an ID is substantially faster and smaller cause it has a constant length
I haven't even gotten that farm
And the affixes are also sent as like, raw text
rather than say:
Affixes: [
{ "Id": ....., Scale: <value between 0 and 1> },
......
]
I think the best way to approach this is to just query the whole things and update a database separately from the actual client side search transaction
Like that would send WAY faster because a single Id + a decimal are WAY faster to send
Thats what everyone does Frobes
And thats why many trade APIs tend to be laggy
well as opposed to doing it virtually
virtually?
inside of the same transaction
Retrieves a list of stashes, accounts, and items as described above in the Introduction section.
Parameters
id Optional
The next change ID you received from previously fetching changes. Default: 0
that has nothing to do w/ stash IDs right?
"next_change_id": "2947-5143-4137-5412-1759",
"stashes": [
{
"accountName": "Nightlines",
"lastCharacterName": "MineBuildSSFMaybe",
"id": "a9a42a5dbda657f71b077ecd0692acce8d1d29c7dff3437e5ed8708f6cb8838f",
"stash": "LEVELING UNIQUES",
"stashType": "PremiumStash",
"items": [
],
"public": false```
nvm, yeah, that just allows you to post the next query for changes
https://ciechanow.ski/earth-and-sun/ maybe slightly OT but i enjoyed it thoroughly
sorry but the earth is flat
Yes but carried on the back of four elephants which in turn are located on a turtle
Opened up my translation of https://github.com/MuxaJIbI4/libggpk/tree/beta/LibDat into node with typescript https://github.com/Syrou/LibDat it is a bit different but basicly without libggpk my translation would not been possible.
It is not going to be maintained but it has been tested and works.
Zombo, what is your app
has anyone heard anything (or has it been announced) regarding GGG doing an overhaul to their API system?
nope
what's the app do, was that I was asking
its a currency cop style app
that uses poe.ninja api
and your stash data
@primal schooner
maybe look for the class attribute directly instead of whatever shorthand class_ is
can't you specify the parent so as to exclude everything not as a descendant of the dropdown
css has .x and [class=x] yes
so you just go to that page and in the console type something like this $('.achievement-list li.finished').each((i,e)=>console.log(e.textContent))
Anyone here experienced with reading poe.ninja or poe.watch data?
Some
Please don't post discord invites
lol rasmuskl
just wondering if there is anything I should know before assuming anything (I know of poe.ninja/swagger doc already)
poe.watch has very similar data dumps but all is well specified, including small details like the fact the website updates only every minute so there is no benefit of polling data more often
@woeful sphinx I noticed you had been actively enhancing the poeskilltree.engine. Do you happen to know if it identifies fated uniques? I looked around a little and didn't see any indications but wondered if you might know better
@inland kestrel for parsing it doesn't really matter if an item is rare, unique, a fated unique, .... It parses the modifier strings on the item, its name and rarity are (almost) irrelevant.
Well, links are no problem. I'm more concerned about the invariants of returned JSONs
wow you also making a filter project...
@earnest radish looks interesting but I went 1 level higher and instead of writing a filter-generating program I wrote a custom-programming-language-filter-compiler program. So instead of just "using" it you have to write the filter itself in a pseudo-programming-language of its own
ahh yes you probably read my reply under one of NeverSink's posts. I haven't posted the project on the sub yet - need to implement a few things and then will post it when its ready for suggestions. You may view it anyway if you want
Some things have been decided upon but are not yet implemented. Some things have not been yet decided upon so you might give me some ideas - jus read the issues https://github.com/Xeverous/filter_spirit
I have multiple target-audience scenarios. Someone can write the filter template, share it, build/refresh it or just share the generated one. You have multiple steps at which the sharing can occur.
Right now I'm brainstorming ideas how to facilitate theming/strictness support to the language
@woeful sphinx Thanks for getting back to me. It makes sense that it's not capture since the parsing doesn't care. I wasn't sure if that kind of metadata was capture otherwise (for completeness or something). That library is pretty awesome so I'll probably end up forking and extending it for my own selfish needs
hey, is there any api to get character information if i want to for example show my character on my webpage ? π€
@compact isle Would it be possible to add pdps, edps, dps, ias, crit chance as selectable mods in weighted searches?
@glacial crown
http://www.pathofexile.com/character-window/get-characters?accountName={account_name} to get a list of all characters, http://www.pathofexile.com/character-window/get-items?accountName={account_name}&character={character_name} to get all items on a character, http://www.pathofexile.com/character-window/get-passive-skills?accountName={account_name}&character={character_name} to get all passives and jewels
nice! thanks π
Not sure why Discord butchers the formatting, in a web markdown editor like https://dillinger.io/ it works just fine
what got butchered ?
Parameters should be italic in Markdown
ah
tested quickly and seemed to understand it so i guess it's fine ^^ gives data i can play around with
Well, I changed it from single backticks to show my formatting
anyone know if you can href to an link and target by element contents?
in what sense
most build posts on POE.com use the spoiler tag or <strong> element to delimit the post
default html anchor is to id
right
i know that
i'm trying ot target by element contents
ie. <strong>Blight</strong>
because there's no div ID's to target
most build guides reserve a couple of posts
because each reply has a new id that you can quote/anchor to
is there any way to break the spoiler tag?
Not sure why Discord butchers the formatting, in a web markdown editor like https://dillinger.io/ it works just fine
@golden bane Markdown has no consistent standard, practically every implementation (SO, Gitlab, GitHub, Reddit, 1st "official", VS Code Markdown preview, Discord, ...) differs in some aspects. Blame Markdown creators they did not provide any grammar spec and only a buggy implementation
Dillinger is an online cloud based HTML5 filled Markdown Editor. Sync with Dropbox, Github, Google Drive or OneDrive. Convert HTML to Markdown. 100% Open Source!
Can you query poe ninja for something other than item prices? (eg list of leagues)
isn't there only ever 8 leagues?
standard, HC, SSF STD, SSF HC STD, current season, HC CS, SSF CS, and SSF CS HC?
Well, I'm intested in a reliable source of data I can put as a league parameter into ninja's API query for item prices
indeed
@earnest radish Looking at your screens - where do you get {leaguelookup[league]} values from?
@lavish gust Are you looking for something more than this?
https://www.pathofexile.com/api/trade/data/leagues
Wondering if poe.ninja accepts it or uses different naming
why don't you just try it and see?
Is there any kind of collection of JS libraries for PoE? I'm searching NPM, but I didn't know if there was an actual list
is there any API resource out there that fully parses the stash tabs endpoint data?
like , any 3rd party
i know that's a pretty big dataset
@inland kestrel > why don't you just try it and see?
This is not a good aproach, at least where I usually work. Better to not assume anything based on experiments.
When parsing poe.ninja data, how do I know which items are low-confidence?
@golden zealot > hey there, working on a tool that needs pricing data -- is the best option to just hit the poe.ninja endpoints? poeninja not having any docs on it or anything makes me hesitant to just spam their poor website
poe.ninja has it's doc (although hidden): https://poe.ninja/swagger/
ok so it's basically a 5 and 10 offer treshold
@subtle lion anyone knows whats default alpha numbers for these (Set[Text/Border/Background]Color)
I'm also interested in this. Found any source? Wondering about this: set the background to 0 0 0 (default alpha), go Delve and put as many flares as possible in 1 place - the black background would go a bit brighter and then take the screenshot of the item laying on the floor and calculate alpha based on this
@fickle yew In UniqueArmour.json How can I determine that a unique item is relic? Is checking whether "detailsId" containts "relic" substring the only way? I haven't found any other pattern for relic items
@lavish gust yeah that's the best way currently. Bit hacky π
@fickle yew I'm parsing item price data for the filter, uniques are the biggest problem due to various properties
- Can I assume that
corruptedfield is irrelevant? Or do you post separate listings for corrupted and non-corrupted uniques? - I noticed some uniques have
"links": 6, they are not displayed on the website - am I right? I would need to skip these - is there anything more I should care for uniques? (that is, any other JSON field worth checking?) - Is there any way to tell from the JSONs that a given unique does not drop normally or at all? (eg I don't want to filter "Golden Buckler" when Atziri's Reflection is expensive because fated uniques never drop) Or would I need to have my own list of uniques that do not drop normally?
- How do you price helmet enchants? Just search trade offers on popular bases (eg Hubris Circlet, Lion's Pelt)?
@lavish gust the links field is used. It just defaults to 1-4 on the weapons and Armour pages. No way to see drop normally. Price enchants are just more or less all items with it (there's a few exceptions)
Corrupted is used for gems
and "levelRequired" is actually the ilvl in BaseTypes.json?
it looks like background 240, text and border 255 or 250 im not sure
does PoB account for ele damage conversion?
i've always wanted to run an eternity shroud build and with the new assassin, decided to spend my leftover exalts on running a BV one. just wondering if PoB calculates all the damage conversion or if I need to account for the dps another way
mostly i'm wondering if the "as extra" damage is calculated correctly
@tidal nova it should be correct, although you might browse the issues on github to make sure no one has filed a bug
ok excellent thanks @frigid nova !
@tidal nova You can check if all conversion sources you expect to be there are broken down in the calcs tab
ah, yes, i forgot you can check there. will do, thanks @golden bane !
"but I didn't want to smash dreams", well, fug yer π worked on that last days
Please don't post discord invites
@opaque shell Does poe launhcer support updating tools?
no, i want to add it, but i dont have any clue how hard/possible its for me @lavish gust
zombpoe developing
IMO the tab transition animation should be faster, and the bottom right <> buttons should be removed and implemented as scroling - currently you have 2 horizontal changes where each does something differently - this is confusing
its called pagination. its actually a standard practice for tables π¦
the tab transitioning needs to be looked at. the function im calling i had to hack together.
whats funny is i originally had a scrolling feature instead of pagination
shouldnt be to hard to fix
also adding a dark mode
sometime this week
scrolling much better than pagination - especially to avoid 2 horizontal changes
i agree
thank you for your ui input
appreciated honestly
still in early stages
well I'm making a very different tool, haven't even begun working on the UI... hopefully it will be as easy to design it well as to criticize someone else's
UI doesnt have to be that difficult, however creating a good UX can be quite hard, and will likely require multiple iterations
If you design your APIs properly... π
20 users later... application is grinding to a halt.
opens patreon
throws hardware at the problem like a baws
gonna need 2 2080's
Nice. Unsure why scrolling requires a backend change tho but maybe Ou referenced something else.
yeah, you tried burning my eyes the other day. Dark mode much better
its not a backend change
it was a joke
its a css change basically
or many ways
dunno not a fan of fiddling around with the intricacies of it
yes i still don't like it much
ahh
i like rxjs tho
ahh
@opaque shell Have a look at this: https://developer.github.com/v3/repos/releases/
@opaque shell Only github auto-updater I could find: https://github.com/VioletGiraffe/github-releases-autoupdater
@golden bane sweet, thanks, will look at it after im done with fan art competition π
what are you using?
electron angular right
just electron
im stopping with app for today, killing child processes turned out to be a gargantuan can of worms
some tools gets grouped nicely with main app process, some make their own group of processes (exilence), some are solo outside group as background app (yolo mouse), and trade macro runs several different ahk's before launching the one you use for game, making obtaining correct PID for kill rather impossible
its going to be difficult to find a universal way to kill all those processes that behave differently
hm, Zombo, I think what you linked is only for your own electron app, from quick read I felt it doesn't auto updates non-electron tools that belongs to someone else's githubs
or Im wrong?
@opaque shell no, you're correct -- it's for making self-updating apps, nothing fancy like updating other apps
Are there any open source auto updaters? Basically download from given link, unpack and run? I already do some networking but not sure how complex it would be to integrate downloading an archive, unpacking it, overwriting files and then launching the process again
Not that difficult. The difficult part would be if you want to make a smart updater, that takes diffs and patching
To save bandwidth
Don't forget validating files before replacing. Wouldn't want to Autodownload untrusted stuff imo
ofc, but right now the tool I'm writing is still quite far from being ready so updaing is not really a concern - I build, test and run locally only
Auto-updates seem to be rather scary nowadays... Windows Defender's shitty cloud AI flags pretty much anything that autoupdates as OMG EVIL.
lol, this is disgusting - using machine learning which is very hard to "fix" in deterministic way; this really sums up some GNU's project arguments towards free software
Yeah, indeed, the whole AV industry is designed around that false positives are good for business, but at least in the past they could tune it and meaningfully whitelist.
sorting and item search demo
@opaque shell yeah its only for your own app
@opaque shell you could probably make a function to check the most recent github release and if theres a new one. that opens up a new can of worms. youll have to figure out how to update it
apologies since sorta already asked in other questions. is there anyway to filter on trade sites for boots with jun's special veiled mod (still veiled). i ask here since item filters seem to be able to highlight these differently when they drop. im on mobile so its hard for me to poke around atm
oof thanks tho. im guessing there is then. will check around myself later
ah yeah my bad. the cannot be frozen
wait i worded that wrong. i meant still veiled... x_x
thanks now i feel dumb. didnt even check what filters were available lol. π
alright, I'm going to be releasing the first beta prerelease of Zombpoe. it gathers data from Poe.Ninja and in the future, will include stash search and stash value/networth
currently im only grabbing one stash just so i can test data, but POE.ninja data should be available without your poesessid even if pathofexile.com is down
In the coming weeks i will incorporate the rest of the stash tab and put them into tables, then cross reference them with poe.ninja data
heres a basic demo of my current progress
also includes sorting
by name, chaos value, and ex value
ill post the release link later tonight
i didnt want to pay for a code signing certificate, so it will show up as an unsafe program. but the program is open source and I will never attempt anything malicious in the creation of this program β€
Was going to suggest Certum's free FL/OSS code signing certs, but they're not free anymore.
Anyway, the assurance of some random person online is about par for the course for the PoE community π
last time i looked up cert stuff was like 3 weeks ago
and gave up cause i didnt want to spend money
well it is open source too *
PreBeta Release of Zombpoe
https://github.com/zombodotcom/Zombpoe/releases/tag/v0.0.3
//
// File Checksum Integrity Verifier version 2.05.
//
MD5 SHA-1
-------------------------------------------------------------------------
c6bea638720cf7a9daaccabefbf5c4a5 f0543bb5edc58e838546de520b8f63938bfce585 x:\angularapps\gits\zombpoe\release\zombpoe 11.0.0.exe
incase it's of interest to anyone, working through building up the poe passive tree in my own program, posting progress pics as i work through it.
https://twitter.com/LyonsJasper/status/1188366114012577792?s=20
@alpine lynx what are you building?
Honestly haven't entirely decided yet, had some plans for automatic tree building but I'm having second thoughts about if it's even a valid idea. Kinda just building it for the sake of building it for now..
are you doing a machine learning style build maker?
Not really machine learning, more like a pathfinding algorithm build maker
Basically specify a number of constraints and generate a tree that uses the least number of points to satisfy those constraints
such as, 190% increased life, etc
I think i may try and make it anyways, even though im questioning how viable it's going to be
I feel like it's not going to work
poeskilltree has that
Interesting, I'll have to check it out
Does anyone have/maintain a list of uniques that do not drop (eg only from prophecy upgrade, corruption, vendor recipe)?
@earnest radish ty, already got fated and breach uniques but forgot about incursion and harbinger
BTW, Is your tool sort of a library or is it a fixed program that generates your own filter? I see you have a lot of code that stores item information but it seems to me the order/structure of the generated filter can not be changed (without modifying internal code) - am I right?
hmm can you guys paste codes in pob.party on macOS chrome?
Don't think that's supported yet (but I didn't follow development for a bit). Someone correct me if I am wrong.
The way to go was to use a special URL to get an adapted URL to POB party
oww poebuddy worked
You can dm @regal mural the pastebin as well and you'll get POB party and Poe buddy links
Maybe that's a working workaround for you
oh nice will use that next time, was curious about paste on mac why it is different although its the same browser, weird webgl/wasm things
who would have a definitive answer on whether or not GGG is working on or has planned to work on updates to the API system for Stash tabs now or in the future?
@primal schooner GGG would
right, is there any way to contact a representative via this discord, or other means? I have tried email and web form through the site / contacts / formal means to no avail...
Try asking here, this channel gets read by Novynn (no pings though pls)
ok, well, we talked about it I guess...
I was really hoping that one of the other bigger 3rd party devs had more of a direct line to someone from GGG.
there's always the possibility they might not be interested in disclosing that information for now
if they are interested in responding, they will respond
4.0.0's killer feature - trade. Nothing else π
long live trade manifesto
@earnest radish AFAIK corruption-only unique items like The Blood of Corruption can actually drop (with the help of a sextant/tempest etc) so filters should not assume they never appear on their base type
is the Dev for poe.trade in this discord?
yes
know his UN ?
yes, but perhaps you should ask yourself if it's necessary to ping him first.
I don't see any other way of getting questions answered regarding the back-end workings of poe.trade, so yep, kinda gotta PM the guy (tried on forums).
Well, people have asked before, and it's his 'trade secret'. But sure, it's xyz#6824
poeapp is happy to share though
I'm assuming that means poe.trade doesn't have an API exposing his parsing of the data (at least not publicly) ?
@golden bane what's poeapp ?
@primal schooner https://poeapp.com, best trading site imo
who devs that?
poeapp#6521
and you say there's an API to the data?
None that I know of
CinnabaritToday at 12:36 PM
poeapp is happy to share though
what did you mean by that?
what do you mean api to the data? i'm confused by your request
they all use the same API
not the GGG endpoint
Share their knowledge about their website's inner workings
if you're using an API to access their data, you're just using a middleman
how THEY parse the data from that endpoint
right
do they have an API to service the data they have gotten from the stash tab endpoint.
oh so basically you just need inspiration
Didn't get that either
in order to build my service, i'd rather just use an API to someoen who has alreayd parsed the GGG stash tab endpoint rather than having ot build it myself
but if they don't expose their means of parsing the data, then i'll have to resort to parsing it myself
just seems redundant to me, you could probably quite easily reconstruct what they've done
right, but i figured I'd check first before I devote the resources to doing it myself
plus, it'd be nice to know about some of the nuances of dealing with how GGG exposes the stash tab data that someone else has run into
ye ye, well im sure they can help you out
heh
are you insinuating that xyz are multiple people, or that he prefers to be gender fluid (or whatever the term is)?
or both
@polar island what does the purple affix coloring signify?
E.g., the life roll here is "Fecund" (90-99). But why purple?
https://i.imgur.com/bceI1oy.png
step 1: go to exilecon, step 2 steal affix api
Thank you!
@polar island does poeapp.com have API to the data your are parsing from the GGG endpoint?
There exists an api but it's against the TOS to use in 3rd party applications
on the site, do you render the results real time, or store the original consumption and then pull from a DB for the items?
I want to have ppl be able to put items into a public stash, and then parse those items (attributes) and compare the values against other similar items that are already priced out / on the market as a means of getting a general idea of value.
feel free to PM me if you'd like to discuss it more.
not sure if it's open source but trade macro has that functionality also, might be worth looking into
to speed things up
Has anyone developed their tool(s) in C++, it's the language im most experienced with so i'm working with it but i'm not sure that it's the best idea for tooling..
More high-level languages are normally used, such as Python, C# etc
should be pretty straight forward in C++ too right?
yeah its not too bad
assume there are JSON-to-C++ classes available somewhere
there's a handy tool for C# etc where you paste some JSON and it will generate class definitions for you
oo
spent a good while setting up a rendering system before i even got into implementing some of the functionalities i wanted to xd
using opengl
rendering system?
mm
oh, but why
it's what i know
<
i'm a media design school student in new zealand so most of my programming knowledge is quite specific to game development
could just use UWP app or something, depending on what u wanna do
I think there is UWP for C++ too
ohh
windows development in c++ is pretty gross
id much prefer to just write my own opengl rendering system
have some experience with it from a year or two ago but it's not a fond memory
I did some c# windows development like 4 years ago at this point, and that was very clean and easy in comparison to how it works in c++
as usual c++ is c++
I think this might be slightly different to what im thinking of
doesn't seem awfully simple so i probably still would have gone with opengl if i had a choice
i should really switch language for this type of stuff though i guess
Qt is cross-platform but I didn't like it much
i heard Qt is awful
the official ide sucks but I've only used it 5 years ago so I don't know if it's gotten any better
nothing changed. qt is still amazing
anything impressive you know of, built with Qt?
KDE Plasma I guess, many CAD applications too
Right, many CAD applications are advanced UI wise
but they're not very impressive in performance and UX
OBS/Bitcoin Core/Teamviewer/Telegram/VirtualBox/VLC are some examples a more typical end user might use
But of course there is also utter garbage like AMD's Crimson Software and Sibelius, however I don't think Qt has something to do with that
I've used PyQt in a personal project before (home automation), it was alright. Only issue I had was with the documentation not being clear about half-supported features
Yeah, those applications are pretty ordinary from a user experience perspective, as well.
Plague Doctor:Has anyone developed their tool(s) in C++, it's the language im most experienced with so i'm working with it but i'm not sure that it's the best idea for tooling..
@alpine lynx I'm writing a filter-related tool in pure C++. No hard problems so far, almost everything needed is covered by Boost. No GUI so far though - this might be a tough choice. Qt is multiplatform and while it looks great for the user, it has one of the most anti-pattern C++ practices which would conflict with like 95% of my code - I'm also afraid of their very intrusive build system and build-time code generation. I would prefer some declarative or imperative library that supports idiomatic C++ and does not complicate the already complex build system or tries to replace the standard library.
glad to hear it's goin good so far π
that's the problem
@simple ravine Do you have an example of some outstanding UI/UX?
I'm using pure C++ with no other dependencies than multiplatform/independent libraries, still compiling with GCC when building for Windows. I haven't even installed Visual Studio
I am planning to add a GUI later (now only a CLI) and it turns out it will be really a tough choice. Almost nothing is clean from all platform-dependency stuff or some build hacks/language hacks
A lot of the applications you use in the 'modern windows 10 apps' are UWP apps, Cinn
@alpine lynx you got any tool in mind/in progress?
I had some plans towards a tree building tool but it seems to have been done already so i'm just building up a passive tree atm and i'll see where i go with it later
this is the current situation xD
ive set up acquiring the images for the nodes i'm just having some issues currently with the multi threading conflicting with some opengl stuff i'm trying to do
multithreading? What's the purpose?
downloading every node image for the passive tree
there's a solid 6000+ downloads required if you've got none of them downloaded already so i figured i'd thread it
What are you using to download it? Why not store it locally with the application?
using libcurl to download
can store locally, just trying to be cool like POB so that my program will always have all the up to date node images
its pretty much sorted
was just hoping to initialize my opengl texture stuff from the threads that were downloading at the same time but i forgot that opengl stuff has to be on the main thread
also it doesn't download unless you don't have one of the images
or rather i mean it only tries to download images that you dont have
Are you using any libcurl wrapper?
nope just libcurl itself
I'm interested how it looks like, I'm currently using Boost Beast + Boost ASIO and it works well
Can you link the code?
aye
Is there any site keeping track of historical pricing data for the current league?
I was passing a date parameter to the poe.ninja API but this apparently does nothing
and poe-antiquary.xyz only includes already completed leagues
i guess poe.watch does in a sense
poe.watch has been growing with time so you won't have historical data for certain items because they only began being tracked midway through this season
Got it, thanks
Looks like poe.watch API only allows retrieving historical prices by individual item, seems a bit clunky for my purpose ("get all [item category] prices on [date]")
what's your purpose for this case

