#tooldev-general
1 messages · Page 109 of 1
the POE oauth server cant handle all the requests..
and ours is giving up too
looks at 20000 "server timeouts in silent terror"
oh well POE time
remind me to discuss your OAuth implementation later 😅
I guess this is why I can't get into Exilence? lmao
oops, alpha
RePoE update is out!
thanks for the quick update @velvet fog !
Thanks @woeful sphinx
@woeful sphinx wasn't intentional to revert anything
for some reason I can't see the comment on github
that's what I assumed since I could just copy the changes in again and everything still worked
@compact isle seed name not match from game file with filter page https://www.pathofexile.com/forum/view-thread/2873743 , ex: I can't find Wild Ursaling Grain in game file
yup, the filter loader has some special code in it to map to the corrected names
....
surprised Bex didn't mention it
is this where i report bugs for pob?
no
ah ok
(assuming you're using the fork for cool people)
Did the order in which the ladder api lists character info change? I could swear ID wasn't listed first last league
@compact isle can't find Condenser and Stanchion too, but Pylon and Storage Tank
@velvet fog condenser = storage tank, stanchion = pylon
I know, but in https://www.pathofexile.com/forum/view-thread/2873743 page, seed and Infrastructure got wrong name
Does anyone know Chinese well enough to transcribe and translate these voice lines?
https://oriath.net/Misc/Daughter_of_Sin_Pet/
https://www.pathofexile.com/trade/search/Harvest/aJP077ue
requirements with max = 0 do not work
anyone has diablo 2 drop sound filters updated for 3.11?
Does anyone using new version of poe overlay?
Can it scroll through tabs
cause mine cannot
@compact isle "30% chance to gain Unholy Might on block for 3 seconds" is not a searchable stat, "Gain Unholy Might on block for # seconds" matches it however
@compact isle Also The Dark Seer has "while you" twice in "Enemies Blinded by you while you while you are Blinded have Malediction"
@fickle yew arcanist brand isn't showing up in build results
Meh I hate those support not support things 🙂
Hey I have a question regarding logs/client.txt. Is there any possibility for this file to contain information about the quests player is turning in? I have some Idea for an addon that could tell the player what to do next for maximum efficiency in leveling. Followup question: would that kind of addon be allowed?
I dont think there is a setting for that
and these informations are not there by default
logs only contain instance names; such addons are fine (Lab Compass is such one)
oh... I'll have to check it out
any possibility to gain that information from the client?
no, there is no IPC/RPC stuff
@delicate ore pushed a fix, should start showing up. Thanks.
ok thank you @lavish gust
Am I doing something wrong or does trade companion not yet work well with Vulkan?
Vulkan 'windowed fullscreen' isn't actually windowed fullscreen, I believe there's a workaround AHK script floating around somewhere
Friend Compositor knows what's best for you 😄
I'm surprised by the colours this league - I thought that I'd have colour-impaired problems with the seeds, but those are distinguishable. I've got a more problems distinguishing between enabled/disabled buttons on the machines 😄
is there a tool that changes what the cursor looks like in game? i'm beyond blind and lose my cursor constantly
Is there a URL for the passive JSON or do you have to navigate to the bottom of the source and copy the inline script? I didn't notice it in my network requests but I might be blind.
It is inline. There data starts with var passiveSkillTreeData =
if you are doing C# you can use the regex:
var start = "var passiveSkillTreeData = ";
var regex = new Regex($"{start}{{(?>[^{{}}]|(?<open>){{|(?<-open>)}})*}}(?(o)(?!))");
In lua, it is a lot simplier: var passiveSkillTreeData = (%b{}). That is what Openarl uses
@rain pasture ^
Thanks, guess I'll have to scrape it.
yep, we all do haha
guess I'll add my ruby in here for some variety 😄
page = open('https://www.pathofexile.com/fullscreen-passive-skill-tree').read
json = page.sub(/.*passiveSkillTreeData = /m, '').sub(/};.*/m, '}')
data = JSON.parse(json)
@earnest radish yeah already fixed it in build section. Sigh
Yup and General's Cry
@earnest radish heh I wrote mine with nokogiri originally which is basically soup for ruby
Ended up just parsing the whole site as a string though since you have a clear start point anyway
Saves building a big fat object to just pull one item out of
HTML parsing is pretty fun
I need to get better at xpath
xpath ❤️
CSS selectors are just too simple so I usually go with them
xpath is technically more performant but the time it takes to write and profile them is way worse than writing a traditional querySelector
Same with XML
@compact isle what am I supposed to do if my indexer gets cloudflared?
staying within API limits, it just suddenly got cloudflared
looks like everyone did
whole site is cloudflared right now we're trying to prevent bad
filterblade also cloudflared
will turn it back off once things are stable again
those should be unblocked again now but several things do have higher protection enabled
novynn, the region parameter makes atlas completion so much nicer this league thank you
Does anyone know what's wrong when the trade api returns a "405 Not Allowed"?
PoB Update out now with new gems and a bunch of other features
Does anyone know if theres a place where to get these Icons as PNG or similar. Could just cut it from here ...
Beside this are there shortcut commands for Tane's Lab and Lab ? Like the "/hideout" command?
when i try to generate a pob pastebin link ti says "error creating paste" any fix for this?
@naive lark Most UI images are in sprite sheets and indexed by UIImages1.txt with coordinates to slice with.
@worthy cape Perfect, thanks and about the commands any idea?
thx
@naive lark As an example, in Art/UIImages1.txt you have the following lines:
"Art/2DArt/UIImages/InGame/4K/WorldPanelHideoutWaypointPinIcon" "Art/Textures/Interface/2D/2DArt_UIImages_InGame_4K_3.dds" 1952 1309 2027 1384
"Art/2DArt/UIImages/InGame/4K/WorldPanelHideoutWaypointHighlightedPinIcon" "Art/Textures/Interface/2D/2DArt_UIImages_InGame_4K_3.dds" 1157 1590 1232 1665
which indicate in which atlas to look and the texel coordinates to slice out.
Looking at that sheet, you can see the two icons referenced in the middle right and bottom middle - https://i.imgur.com/PlPRfyK.png
(use pypoe_ui from PyPoE to export the files if you haven't already, don't forget to check the Options option to uncompress DDS files)
Y i already used it once ^^
I could've sworn I had written a tool to slice out things from the sheets but I can't find any 😄
Thats fine thx ^^
Can someone here tell me how to build the path of building standalone version?
@compact isle 11 new cluster notables that were added to the tree were not given the ["isNotable"]= true, flag on them. You can see a list of them here https://github.com/PathOfBuildingCommunity/PathOfBuilding/issues/1061
just heard about this drama of github renaming the default branch from "master" to "main"
I wonder if GGG will be brave enough to rename their masters to mains 🙃
...
Can I be a science main finally
I'm going to be a main of disguise
I dont know if thats the right place to adk but can someone send me 1maybevaluable sound file it very much appricate
any of the tool developers that work with affixes and such (e.g. craft of exile)
can you guys see the tags of any affix?
in particular I'm interested what the tags (if any) of beastcrafted affixes are
I can't find it on poedb
ah found it in mod_types in repoe
sadly no tags
"adds_tags" in mods in RePoE might be what you want
Are there any news about the Cloudflare bans? Saw a Reddit post but there wasn’t an answer.
not too pretty, but it is coming along haha
I can't believe the sheer amount of crap they stuck in the way
Definitely has made me want to put a grid together to understand how much is actual usable space
Been done, repeatedly, https://docs.google.com/spreadsheets/u/1/d/1b1maezGBODta9rGgcd58bkcG6DwrCdoFfBjRTyUOqyo/htmlview?pru=AAABcvVljX4# has a grid for example
I am mainly just board and wanted something easily shareable lol
I meant to @rain pasture
Ah
I like that the spreadsheets and the garden planner website have different layouts of the rock by Oshabi ^^
(this one: https://harvest.iw.gy)
the menu bar ... icon is better
Teach Overwolf how to extract it <_<
@rapid pagoda doesn't stop me from wanting to make my own 😛
Oh joy, Github has shipped a new look. Now everyone can be confused where to download PoE tools all over again.
Yeah, why did they do that....
I wonder if there is a way to turn back on the Releases tab...
« and then you feast your eyes on the panel on the right hand side and squint for "Latest release" »
Oh, they are on the right >.>
yep
It feels like that bar could be on the left for some reason
There is a lot of empty space
replace your monitor with like 3 phones
it's so uggo 😦
the commit list is hiding in the middle of the page now
and yeah, really not a fan of the actual useful content being pushed off center to make room for meta junk
I saw was prompted a week ago to use this new UI as an experimental feature and switched it off after about 5 mins. Can’t escape now I guess
yeah it's weird, that was a second experimental thing they ran for like a week, then they just flipped both of them on
the second one was actually pretty nice
any way to search for seeds by item level in the trade ui yet? i don't seem to be able to figure it out.
can't
Does the poe-racing dev frequent this channel?
Is there a way to remove focus from stash search input other than moving mouse to UI area and clicking on it?
Hit Enter?
5Head, thank you
I've got my advanced mod descriptions on F, so I learned rather quickly to always lock my searches in before poking at items. Very few items match cluster jewelfffffffffffffffffffff
That's not how I expected the "pet" to look 😄
pet pickup effect https://www.bilibili.com/video/BV1if4y1y73e?p=3
wait, there's a keybind for advanced descriptions?
Normally Alt is both pickup and mod-describe. I’ve split them up.
As it kept showing all the crap loot as mod-describe doubles as “don’t filter lol”
also shouldn't Daughter of Sin be a gross scorpion? 😛
Of course, the whole "hold key to pickup" is all due to being tired of dying when click-to-move hit an item label and the game sends me off into certain death.
@worthy cape how do you split them? I tried looking earlier and didn't see anything
@rain pasture "Highlight items and objects: F", "Item pickup key: Alt"
is this the right place to mention a bug going on with the PoB community fork? if not does anyone mind pointing me to the right place?
Bug reports are best made on the github repository for it.
beauty 😄
I need to add a screenshot button lol
I normally hate spreadsheets for things, but I find myself using them as my planner since I can easily key numbers/letters into them and jump around with my arrow keys
if you added keybinds to this I'd probably use the heck out of it
Yeah, this is just a base line. I am hoping to do keybinds/color selection
I got two questions about the trade API.
How do I get the change id for the start (or approximately) of Harvest league? I'd rather not make unnecessary requests and I only care about Harvest.
How do you tell if items either get updated or removed. Reading the API docs it says
When you update an item in a tab, or update the tab itself it's ID will take the next available one from the pool on that server shard (the old ID is discarded, and never reused).
If stash tabs take on a new ID and their old ID is never reused how would you know when items get changed or deleted? Say for example you have a stash tab with ID 123 containing a Jade Amulet and the owner adds an Agate Amulet to it, the way this part of the documentation makes it sound is that it will appear with a new ID for example 234 containing a Jade Amulet and an Agate Amulet. But how would I know to throw away the old 123 tab(?) which I should do because it's now the 234 tab.
that documentation refers to the change_id
Oh... the way it was written it sounds like it's the tabs ID since it says "it's ID".
Thanks for the answer though.
Do you know what change id would put me at approximately the start of Harvest?
@earnest radish haha yeah, that is the plan. It shouldn't be too hard to add them
Uploaded the code to github as well: https://github.com/EmmittJ/PoE.Harvester
any1 have an image of all the league icons? the icons you see beside friends names, or on the challenge trophy
@clever crystal https://poedb.tw/us/LeagueFlag
流亡編年史提供全面的物品,傳奇,寶石資料,最新的遊戲消息,最全面的基礎知識。
Anyone use trade compainon? i feel not "instantly" PM or bcak to h/o when i press hot key , a bit lag like 1-2sec 😦 WHY need some help
@ripe willow While that sounds annoying, this is not the place for end-user support. Try #1┃endgame-help or the issue tracker for the tool in question.
oh got it
spoiler: all of the broken programs are written in JS
@rain pasture I recommended your blight site in global chat last night, I would like my cut of the sick exposure profit you got 😄
nothing_at_all dot gif
Lol that book could just be a link to my GitHub
@compact isle If you just search "Militant Faith" on the trade site you can find some "Dominus" ones. But if you put "Carved to glorify # new faithful converted by High Templar Dominus" in the search filter, you can't see any results.
also i don't know if you saw my message earlier but the map region dropdown has been clutch this league thank you
@ripe willow You should try Poe Lurker
https://github.com/C1rdec/Poe-Lurker
@orchid glade it’s a problem with out current installer. Try using the zip one until we fix the installer some time this week
@candid ridge thanks for the reminder I've been meaning to investigate further into that
no official information although it might be a good idea to add it especially now that we support it on the website
I'll make an issue internally
I doubt we'll be doling out code samples of the engine or anything like that though
can't risk telling players about the WillBeGoodIfIdentified filter parameter 😉
we have to keep all the fishing related ones to ourselves
Do we have any working replacement for trade macro/overlay ?
@earnest radish my project has GGG's filter docuemntation/chanelog because I needed such https://github.com/Xeverous/filter_spirit/tree/master/doc
@foggy bear check out Awakened PoE Trade and see what you think
thx gonna take a look
Would anyone know a way to grab this background asset?
I'd expect it to be in a sprite sheet?
Quite a lot of them as "Art/2DArt/UIImages/InGame/Harvest/...
Art/Textures/Interface/2D/2DArt_UIImages_InGame_Harvest_1.dds: https://i.imgur.com/Axwj0wP.png
UIImages1.txt: https://gist.github.com/zao/6b4b6a2267f80746920ab243651ccba2
@ashen dust If you're not familiar, UIImages1.txt has virtual resource names that point to a sprite sheet and a rectangle to slice out.
I'm not familiar at all. Thank you for this!
You can dig around the GGPK file with PyPoE's pypoe_ui.
(make sure to check the option to decompress DDS files if you extract those)
Great, thank you!!
(that's Art/UIImages1.txt btw)
Has anyone tried to make a c# app that polls the color of a pixel inside the life bar and when it changes from red to dark gray/black to trigger a logout macro
should be doable
this is bannable
how is it bannable lol
You need player-initiated actions.
multiple streamers have already been banned for auto-logout
ok
https://github.com/SteelPh0enix/PoENinjaDumper
If anybody is interesed, i made a script more than a year ago, that can dump poe.ninja data (item names and prices in chaos at the moment, but adding more stuff should be easy) to spreadsheet. Today i've re-factored it and put the main functionality in separate python module, so feel free to use it
(by the way, i just realized it's broken as fuck so give me an hour or so to fix this if you want to try it)
As is tradition.
dissapointed but not suprised
few hours ago i thought about creating my own item filter, now i'm fixing a year-old script i've written ASAP to track my cash money because i didn't know that currency cop existed...
exilence next is another project similar to currenycop if you want to check it out lol
yeah, i know about that now and i've been using Exilence Next, pretty nice tool. Now i'm fixing and modifying this script because i want to use it to dump items in certain price thresholds from poe.ninja
well, seems to be working fine
Wow I should totally use that. It's way easier than my way of collecting data.

i'm very open to suggestions if you have a better solution than force-scraping your API
although it seems that ive finished what i wanted to do
oh, i know
@fickle yew do you have any paging mechanism for your API, so that i won't have to pull whole gigantic JSON from your site? Or is it done 100% on the front-end?
There's no paging. I've had requests for data dumps of the current league. Maybe I should do that some day.
aight. i'm asking mostly because downloading BaseTypes JSON takes ages.
it would be nice to have an option in API to download n items at least
The download itself should be pretty fast.
ah, true, that must be parsing
So it'd only be faster for you since you have a price threshold.
You can optimize your parsing 😁
well, it's the issue with library i'm using i think. Or python's json.loads method. I will check that
yeeeeeeeeeah it's Python's json.loads
orjson is a fast, correct JSON library for Python. It benchmarks as the fastest Python library for JSON
yeeeeeeeeeeeeah...
json_data = ujson.loads(data_request.text) really be like that sometimes
https://github.com/SteelPh0enix/PoENinjaDumper/blob/master/poeninja_dumper.py#L123
if anybody could take a sec and look at this, maybe i'm missing something obvious there
why dont you just use the inbuilt json retrieval in requests
because i did not realize it has this functionality, until now
brb gonna check it out, thanks
in your case it would be data_request.json()
yeah, i'm looking at it right now, let's see
It probably uses the same json parser lol
2020-06-26 21:56:25.969374
2020-06-26 21:56:26.048373
if you feed it div cards
yep, 5 milliseconds
that is a lot better
seems to use complexjson
works like a charm
def json(self, **kwargs):
r"""Returns the json-encoded content of a response, if any.
:param \*\*kwargs: Optional arguments that ``json.loads`` takes.
:raises ValueError: If the response body does not contain valid json.
"""
if not self.encoding and self.content and len(self.content) > 3:
# No encoding set. JSON RFC 4627 section 3 states we should expect
# UTF-8, -16 or -32. Detect which one to use; If the detection or
# decoding fails, fall back to `self.text` (using chardet to make
# a best guess).
encoding = guess_json_utf(self.content)
if encoding is not None:
try:
return complexjson.loads(
self.content.decode(encoding), **kwargs
)
except UnicodeDecodeError:
# Wrong UTF codec detected; usually because it's not UTF-8
# but some other 8-bit codec. This is an RFC violation,
# and the server didn't bother to tell us what codec *was*
# used.
pass
return complexjson.loads(self.text, **kwargs)
There is no formal documentation at present, please read example.py for an example.

read that too rn
who needs docs if its speedy
hm seems to be just renamed
from .compat import json as complexjson
🤷
as long as it works
i've spent too much time on this, but at least now i can copy&paste currency of custom-defined tier into my lootfilter
i'm 95% sure i will never use this tool in my life again
@rain pasture I have added keybinds to https://poeskilltree.com/harvest/. They are all defaults right now, but that should be easily changed in the future. 1-3 change the life force type, shift 1 - 4 change the tier, the others are listed on the right of the name
I might take a look when I finish reinstalling windows >_>
oof
It surprisingly works ok on mobile. The pinch zoom in/out doesn't work tooooo great, but that can be adjusted
For whoever was unhappy about the GitHub UI change, this came up in my feed as a fix: https://github.com/daattali/oldschool-github-extension
Started using the extension yesterday and seems to work great. Can't blame a small indie company like GitHub for forgetting about ultrawide support
blame github, never blame new zeleand devs
with that in mind, were there any oauth etc changes which would affect atlas usage?
my last project (https://zedor.github.io/poe-tabled-atlas/) has an outofdate unacessible in realtime usage deficiency. im wondering if the ritardos over at the zealand state made accessibility progress
or are we still locked out of stash contents etc
(fwiw for that project i was querying public posted maps before i realised its too unresponsive to be deemed usable)
whoever is the ggg git responsible for the oauth fiasco anyways
havent played in a while, but i remember being limited by their designations and interactions despite my absolute stupidity, so i was kinda hoping i can come back now and make a propel qol tool
@mortal bone it's beautiful~
my only nitpick would be to trigger a repaint on select, otherwise it keeps the old one until you move the mouse
Yeah, I noticed that as well haha
fair enuff i supposedly kill myself because not only are ricky martin statues forbidden in poe but the devs still have no idea how to manage player inventory interaction
@long edge Have you considered being nice instead?
i was nice a few leagues ago when i spent 200+ hours on testing synthesis league and then i got gutpunched by an undocumented change
or should i mention the time when atlas changed from functionally and logically and accessibly working to a shitshow
regardless, check my chat history, i tried fixing things before stirring things every time, no need to be a douche
OR we can just agree its a shitshow all around and pick up the scraps, as always, eh??
jk, its not a shitshow, me being able to access stash tabs within the website (lets not get into dev acess, alrite?) is amazing
i guess, dont be a tosser, if you want to be helpful, honestly answer my questions and thats it. its not like i was provoking anything, i was literally reflecting the state of the game as it was when i left it
This isn't the place for this.
suppose i could ask about oauth in voice linking in that case, cheers
I mean, you are kind of just bitching about stuff. If you truly wanted to know about oauth then you can just email rory...or control f here and search oauth...
Desecreate Spawns # additional corpses is not present on the trade search in explicit mods, Desecrate Spawns an additional corpse with 3 works but should not
I love the sassy headlines about this
"GitHub redesign goes mobile-friendly – to chagrin of devs who shockingly do a lot of work on proper computers"
do you not have phones
do you not have phones, exile?*
@compact isle The league ladder API is defaulting to Harvest boss kill sort and it seems there is no way to force it to sort by the regular exp / first level 100.. is that intentional?
@fickle yew see recent ggg-tracker, should revert to regular ladder “at the end of the week” or something.
Ah okay.
Well poe.ninja is listing 30k characters because of it, so I guess I shouldn't complain.
Thanks @worthy cape
is anyone familiar with unpacking the ggpk? im not a programmer but im trying to use pypoe and dont really know how. ive gotten as far as installing git and python
@lone kernel What are you hoping to find in it? 🙂
i want to find oshabis lines
and i just wanna look around the files anyways
mtx and such, instead of using poedb
oshabis voice lines arent all on poedb and even the ones that are get 404'd on click
Some of the tools I use for generating that listing are at https://github.com/oriath-net/pogo
ogod i joked about the github layout but its horrible
They actually changed it a bit since the first release. Some of the lines are back
still is pretty nonsensical
this is able to unpack the ggpk?
Among other things, yeah
are you perhaps able to walk me through it?
oh there are instructions nvm
once i install go how do i open it?
i dont see a shortcut
It's not a desktop application
what is it
It's a command-line tool
so do i just use cmd?
cause im looking at the instructions and have no idea whjere i need to input these lines
feelsbad i feel like an intro to programming course to do this
I mean, these tools are kind of aimed more at developers than end users, yes
some of the listings have ratios greater than their actual stack size
@lusty musk for example, someone selling 3 ex for 540 c, but they only have 2 actual ex in stash - those listings would be filtered out by this setting
So Path of Building doesn't account for brand damage bonuses on the passive tree when you link Arcanist Brand with a skill. It's accounted for in-game though. Just thought I would let you guys know.
not the right place for this but it should be fixed in next update
You may want to file an issue on the github tracker.
(or check if it's already reported)
its already fixed on dev branch
The magic of typing things simultaneously.
oh i see. thanks for the info. im not a dev and i thought this was a place to talk about poe-related tool stuff
@heavy portal It's more about dev-to-dev discussions, end-user stuff tends to go elsewhere.
it is, unless said tool has other specific area's to report said issues
like the github
much easier to handle issues than comments in discord, and much less likly to get lost to noise
@fickle yew is poe.ninja falling behind? I am at a change id in front of it
@lusty musk should be better now?
@fickle yew yes, what did you change?
there was an issue with some seeds giving warnings.. many warnings 🙂
log getting flooded?
Not quite, some different logic when the warning happened
it was still processing though, just a bit behind
@compact isle Would it be possible/are there any plans to add prophecies to the bulk item exchange?
yeah it just requires rewriting the entire thing
Anyone have any information about the trade api? Specifically looking for obscure options. I found a swagger page, but documentation was lacking.. but that seems to be the common theme when dealing with the trade api.
Also, one of the cooler parts of the trade api is that all the mods have unique ids, anyone know why the public stash api doesnt include mod hashes?
Checked pinned and searched through some of the messages, either way if anyone has any tips. lmk!
oh, enums and such specifically
@compact isle The character api was returning 403 forbidden for everyone for a few hours. This is the same as how private account react normally and I actually remove people's data if they set to private, so it caused all characters to pretty much reset.
we managed to cloudflare you again with a rule that was too eager
surprised it sent 403s
Ah okay. Any other status code would be appreciated 🙂
Voting for I'm a teapot
Does the PoB Community Fork work with the increased max rage nods+uniques yet?
yes
I added all the new rage stuff from 3.11. uh, except from the phys multi mod on rigwald's command, woops
basically - setting rage to 50 has no effect from setting rage to 60, and the +max rage node doesn't show that the line is working. is it just an update that will be pushed out later?
oh interesting,. im not on the latest release
turns out i had the old PoB+localidentity hacked in, and not the new PoB program. okay got it. thanks!!
on the current version there are a couple of effects that don't work past 50 rage, namely the phys damage from rage support and the degen from berserker's rite of ruin, which will be fixed in the next update
previously, instead of limiting rage to 50, anything that depended on rage had a local limit, ie the amount of increased attack damage you could get was limited to 50%, then multiplied if you had rite of ruin. when I updated it to limit the actual rage instead and removed the limits on some of the rage mods, I forgot to remove a couple of local limits
phew, ok. that rage support dps is specifically what i was looking at so i'm glad you mentioned it!
Anyone have an example currency trade api request?
Looks like the Enemeies blinded by you while you while you are blinded have Malediction typo is going to be fixed. Will that affect any of you toolspeople?
is it intended for mods like "Cannot be frozen" to not be in the stats filter on the trade site?
@fickle tusk It's #% chance to Avoid being Frozen with 100.
oh wow, thats counterintuitive. i would really suggest implementing an alias if thats possible @compact isle
Almost as lovely as many reduceds being increaseds with negative amounts.
However, in its current state it is very friendly for trade tools (both for matching to game files and increases/reduces) 🙂
its fine from a technical point, but there should be simple aliases that matches the game lines for end-users. they just need to map to the technical stats, maybe with some offset/constants
@compact isle is this a database corruption or something else going on?
I noticed in my database some rare items didn't have names
and I thought it was a bug on my end...
until I found that really those items don't have names
screenshot in case they get delisted
@lusty musk a few have popped up on the reddit, seems to be caused by seedcrafting - no mention of a fix yet in the patch notes preview
you always find the weirdest items while writing these indexing projects
because your assumptions constantly get challenged 😄
Assumptions are the devil
At least document your assumptions, that way they're easier to keep track of, if they become many
or just assume you dont need docs in the future because everything is self explanatory 
I think that's a rookie mistake everyone grows out of (hopefully).
Fun fact our third party API supplier was mailing me angrily because I sent 204 as reply to webhooks which clearly is not 200 (success). How dare I.
Hi, trade-fetch-request-limit and trade-search-request-limit aren't sharing the same rate limit, correct?
So https://www.pathofexile.com/trade/search/Harvest/ and https://www.pathofexile.com/api/trade/fetch/
Because Novynn wrote the following in the forum:
"The "X-Rate-Limit-Policy" header shows the policy that's active on the API endpoint (searches/exchange queries use the same policy) so requests to either of these endpoints will contribute to the same rate-limit rules."
They are different, right? Since this morning I am getting limited when I reach 7:4:0,18:12:299 @/fetch
and 12:6:0,21:12:0 @/Search. Never got banned before because I don't go above the limit...
@grave wren Successish 😛 204 Aight
(if you're trying to remove the preview, encase links in <>)
I am not trying, but I can totally do
Flickering edits made me wonder, that's all 😄
@unreal raft Yes, trade-search-request-limit is lightweight ElasticSearch (i guess) query (searches/exchange queries - contribute to the same rate-limit rules), while trade-fetch-request-limit is more heavy to query items from DB and transform to "nice" looking json
@unreal raft Yes, trade-search-request-limit is lightweight ElasticSearch (i guess) query (searches/exchange queries - contribute to the same rate-limit rules), while trade-fetch-request-limit is more heavy to query items from DB and transform to "nice" looking json
@civic crane so they are different and don't share the same limit? Search and fetch. Only seacrh/exchange share the same(?) Do I get you right?
there is search and fetch phase, and corresponding rate limits for them. API endpoints just format/query data differently for seacrh/exchange.
So why do I get rate limited with the values I sent above?
It wasn't the case for multiple weeks, started today. I first query /search, then /fetch.
I should be allowed to make 2 requests per second to /search and at least the same for /fetch, why does it start limiting there?
18:12:299 while allowed is 16, so what is wrong?
I don't hardcode anything
Just tried to debug why I get limited
So shouldn't be 12:4 be allowed?
The first one is IP based, the second one account based, isn't it?
Don't make more than 12 requests in 4 seconds or you get a 10 second timeout, and don't make more than 16 requests in 12 seconds or you get a 300 second timeout. The limit-ip-state should tell you where you are at on these
That's what I thought, so I shouldn't be banned.
what api endpoint is that for?
@simple ravine that was https://www.pathofexile.com/api/trade/fetch/
ok
Don't make more than 12 requests in 4 seconds or you get a 10 second timeout, and don't make more than 16 requests in 12 seconds or you get a 300 second timeout. The limit-ip-state should tell you where you are at on these
@mortal bone Okay, I thought the first one is important and never thought about the second one. So in theory I can only make one request per second, thanks! Quite strange that I never hit it till today
Yeah, the other end points have different timeouts and this one seems a bit weird
Yeah, the other end points have different timeouts and this one seems a bit weird
@mortal bone btw, the second one seems shared between these two. Or my requests are broken
printed the current state with 2calls per second. In every call I made one request to /search, one to /fetch
11:6:0,14:12:0 in /search
8:4:0,15:12:0 in /fetch
11:6:0,15:12:0 in /search
7:4:0,15:12:0 in /fetch
12:6:0,16:12:0 in /search
8:4:0,16:12:0 in /fetch
11:6:0,16:12:0 in /search
7:4:0,16:12:0 in /fetch
12:6:0,17:12:0 in /search
8:4:0,17:12:0 in /fetch
11:6:0,17:12:0 in /search
7:4:0,18:12:299 in /fetch
12:6:0,18:12:0 in /search
8:4:0,19:12:299 in /fetch
11:6:0,19:12:0 in /search
7:4:0,19:12:298 in /fetch
12:6:0,20:12:0 in /search
8:4:0,20:12:298 in /fetch
11:6:0,20:12:0 in /search
7:4:0,20:12:297 in /fetch
12:6:0,21:12:0 in /search
11:6:0,22:12:299 in /search```
The one before the comma is separated, the other one seems shared (but that wouldn't make sense tho, if you add them together the number is wrong). Yeah, maybe it has to be a bit slower
"the other one seems shared" - wrong
yeah I noticed, edited but didn't delete
Both rules apply at the same time. The former allows bursting while the latter governs sustained rates of requests.
@compact isle are the horticrafting stations with available crafting options planned to be searchable with the trade site?
horticrafting station tradable?
no, people just want them to be listed on official trade as well so they can offer it as a service
feels a little out of scope for the trade site to list things you can't trade, though
@wooden walrus they're searchable on both poeapp and poetrade
this is just me guessing but no point adding trade support if harvest isn't going core
you can search for plenty of things that didn't go core, like https://www.pathofexile.com/trade/search/Standard/YjKbiY
@violet path thanks, i knew about poeapp, how are they listed in poe.trade?
@wooden walrus https://poe.trade/search/ehananomonasis, not sure how to actually get the mods, just seen screenshots
thanks, awesome
I don't really think they're appropriate to show on the trade site - all the other items are things you can trade securely via the trade window but there isn't any kind of safety net for Harvest trades
seems they'd be better for some sort of services site that can use the listed items to verify the service provider at least has that crafting option
I was kind of surprised that they're itemized at all. Leads to all kinds of odd little quirks, like being unable to delete a character with harvest infrastructure in their inventory (iirc?)
everything being items is definitely a decision that is causing some ruckus behind the scenes
The poe website is super bad today.
I'm seeing my client unable to load my item filters even.
maybe cdn issue? i'm seeing the search site work, but the images never load for the item listings.
not sure what that has to do with #tooldev-general
You're right. I just don't know where else to report something technical about the site.
probably on the website forums, in the bug report section, under website https://www.pathofexile.com/forum/view-forum/413/tag/Website
can't complain about website being bad if website is down 
I tried that yeah, I tried to msg bex about it. Me and my friend are both having the isse.
you can always use techsupport@grindinggear.com, better than messaging Bex as she'll just forward it there anyway
Thanks! I will add that to my notes.
Hey, somehow I got cloudflared the second time - I am totally staying inside the rate limits. My Useragent seems fine, I don't really get it. Maybe now also cc @compact isle, perhaps you can see the problem (?) Getting a 403 and the cf page now - same as last time. That started with Harvest, maybe my useragent isn't good enough anymore? What could be the problem?
will this ever be fixed?
https://www.reddit.com/r/pathofexiledev/comments/hj130q/cloudfare_issues/
@velvet fog aye, wrote a mail. Let's see - just insane that it started banned me since Harvest. Before that I never had problems, my service ran for multiple months without a problem
they may changed the policy
today I found out my indexer never picked up on mirrored items
why? because it's called "duplicated" in the API, not mirrored
Duplicate-tier items.
Duplicate-service
zao is actually a dupli-cat
@compact isle we were trying to set up a service sharing system, which is kinda hard without them being searchable
it would have been an extension to the official site
(we couldnt get it working with poeapp who do list them for technical reasons)
because right now, sharing these crafting options is a terrible pain
we were trying to fix this situation
Please don't post discord invites
ok gruest >_>
notice the messages were all sent within a minute
we will eventually build a stash indexer, but it would have been nice to go the extension way
there's this discord server for all of these things
.... "there's an app for that"
@compact isle is there a way to avoid this?
i'm not doing anything out of the ordinary
i'm logged in
feels like i get rate limited for some reason
hmm, i just finish my Harvest Service sharing (very early beta version)
need to add service fee and search/filter function
this is direct fetch from my stash tab
@wooden walrus take a look when you had time
@simple ravine yes, the main goal of this extension would be to support the TFT server. We decided it was the most efficient way of making the wts-services room searchable
i'm well aware of this discord 😉
maybe what you can do is do something similar to that maps trading site
where you maintain your own WTS notes, and have people log in using PoE OAuth2
this way you can create a site which matches WTBs and WTSs together live
@simple ravine not a bad idea, but we're currently using a different system
oauth is a good idea
PSEUDO +#% total Attack Speed does not work with the Pariah on official trade. Intended or bug?
#% increased Attack and Cast Speed not counted in +#% total Attack Speed for any item.
https://www.reddit.com/r/pathofexile/comments/hk5c3n/3111_patch_notes/fwqo2yp/?context=3 @hushed relic
done!
@compact isle we have ~b/o and ~price for trade note, is it possible to have more options, like mirror fee
xD now i just need paste it on TFT discord
@compact isle got a lot of english skill name from garena taiwan stash api with Forbidden Shako (IndexableSupportGems.dat)
"插槽中的寶石被等級 # 的 Added Chaos Damage 輔助"
hm thanks will pass it along
we don't provide any official services service so it doesn't make sense for us to add more trade note types
you can always type whatever you want in as a note field
Are there snapshots of the HCSSF Harvest Ladder api archived somewhere? I want to make chart similar to this for this league. https://www.youtube.com/watch?v=Hg7FmwpkHnA
PoE Ladders: FULL RACE TO LEVEL 100 - Legion Hardcore SSF - Top 20 - All Classes. Congratulations to Steelmage for the level 100!
For contact and feedback message me on Discord Intensify#1566
::DATA SOURCES
Path of Exile Developer API: https://www.pathofexile.com/developer/...
check forum https://www.pathofexile.com/forum/view-forum/leagues-and-race-events these is csv download
Thank you but the csv only shows the ladder at the current time. How can I see what ladder was like on Jun 19th?
can't
they get that every period and stored
I see so I have to ask poe-racing dev if he can share data?
Note that the ladder was returning weird results the first part of this league due to the boss kill event, so ladder data over time may be surprising until the day they flipped it back to by-XP again.
Hi, I am working on a third party site and I was wondering how can I add support PoE's OAuth2 login. I cannot see it any of PoE's documentation, but I know that some tools use it (e.g. Exilence).
@neon plume Email roryv@grindinggear.com with your requirements and app information
Awesome, thanks
There's a wee pin about it in the channel if you squint 😄
I knew it was in there and still missed it when verifying it was still there 
The void is taking over
"PoE tool development discussion. NOT IN GAME DEBUGGING. Not how to use tools. :stackoverflow: :readthedocs:"
RTFM 😄
PG13 version, the chests are censored 
@wooden walrus have you considered creating a simple interface to sell crafts via the public tabs API?
IE: Place a chaos orb, list as:
~b/o 1/40 aug_lightning
And then just need to make the standard trade API parser site but it specifically parses the list of defined terms
I think the key to us making the weedcrafting stuff work in a not awful way is it has to be a buyers market, people need to list "Im looking for x/y/z" not "I am selling x/y/z"
Because its actually pretty trivial to then just list 40 chaos for sale for a aug_lightning via the note
Basically, literally all we need then is for a trade interface dev to expose looking up trades by note.
Like if I could just type in "aug_lightning" into a Note field, and it'll then rattle off the trades that have listed that as their "buyout currency", boom, solved it
Anyone know where the jewel socket lines on cluster jewels (e.g. "2 Added Passive Skills are Jewel Sockets") moved to in the GGPK with the 3.11.1 update?
@carmine merlin Modulo bugs in my tool, my search for the string literal only reveals one location in the old and new GGPKs, both in Metadata/StatDescriptions/stat_descriptions.txt. As for what indexes into that file, heaven knows.
@hazy wigeon good suggestion 🙂 we are using a similiar method
@worthy cape Yeah there's one line in there from before for local_jewel_expansion_jewels_count but is only for 1 Added Passive Skill is a Jewel Socket weirdly not one for 2 sockets
Isn't it this?
1 local_jewel_expansion_jewels_count
2
1 "1 Added Passive Skill is a Jewel Socket"
2|# "%1% Added Passive Skills are Jewel Sockets" canonical_line
yeah
I haven't dived into the stat descriptions file before so have no clue how it works, might ask Openarl about it
I love the font substitution in VS Code...
Thai is kind of cool, they've got the same grammar for 1 and 2 sockets.
Neat
that russian font looks more like some elves did translate the lines than what it actually is
It's apparently falling back through my list of fonts and I used to code in one like that that has weird sizes.
Feast your eyes on this
straight outta Rivendell. its beautiful
exocet or riot
(this is Gabriola, for you lunatics out there)
Those t:s... chef-kiss
feels like I'm reading ancient manuscripts and not code
diablo feelings in my poe discord 🚮 😄
the balance between fancy and efficient
I have come across the RePoE repository with the data dumps, but they all contain internal names like Metadata/Items/Currency/CurrencyRerollSocketNumbers is there a publicly available translation file with human readable translated names?
nvm, I'm stupid
Hi, may I ask questions about impale in POB fork
I basically did not change anything but only changed the main skill to explosive arrow then I got an insane damage with impale
@oak apex this isn't really the channel for those kinds of questions but feel free to PM me your pastebin if you want me to check it out
rewinding loading and then giving this error
@pseudo ocean This is not the place to get help with this kind of problem. You can try asking #offtopic if anyone knows this problem or message support via mail or the official forums.
@fickle tusk 👍 👍
https://reforge.poe.dev/harvest
Now we can looking for other people's craft.
PS: crafting fee will be public soon
is there a sane way to add an item requirement to the current search on the official trade site, or fill in a text form value, from javascript (tampermonkey/greasemonkey)
so far I've found require("PoE/Trade/Data/Static") and window.app as interesting probe points but haven't found the appropriate bit yet
seems to have made some progress
window.app.$store.commit("setItem", {"term":"test"}) // set search term to test
window.app.$store.commit("setPropertyFilter", {"group":"misc_filters", "index":"ilvl", "value": {"min": 23}}) // set ilvl search field to minimum 23
is it just me or json with passive skill tree data makes no sense for Ascendancy nodes?
I tried to find bugs in my json/parsing, but could not find. groups with children that has reference to nodes with "isAscendancyStart" have their positions way off compared to other public tools. the biggest issue is Inquisitor https://i.imgur.com/CUow1on.png
do people just overwrite those x/y coords every time a patch with new json comes as every tool lists Ascendancy in almost the same way.
Yeah, you have to overwrite them to fixed positions to make sense of them. Inquisitor wasn't always in the Marauder area, but the ascendancies have always been quite scattered
How do I start the PoB Launch.lua on Ubuntu?
Hello, does anyone have been using API with PHP Curl ? I got troubles with PoESessID either if I set it as a cookie. thanks
where can I find the syntax for how premium stash tabs work? For example ~b/o 5 mir. Is there a grammar for it? Is there comment character? (for doing ~price 1 mir | 20ex fee) ?
I guess I'm looking for more
This only shows "~price" and makes no mention of "~b/o"
about the mirror fee, Novynn replied
we don't provide any official services service so it doesn't make sense for us to add more trade note types
you can always type whatever you want in as a note field
when showing an item on the forum, some are marked as verified. Is there something special to make that happen?
I remember verified means it's still in his stash
items on the forums are copies of game items. Verified means they still match the item they were copied from
doesn't look like it cares about moving it around
Bex on Twitter: I spoke with the team and we're planning to fix some mod inconsistencies and also display the tags in the advanced mod display. I don't have an ETA yet.
@velvet fog Exciting!
@velvet fog I'm curious by the way, there's two kinds of labels on poedb for mods on items, blue-white attack and black-gold attack. I assume the black-gold ones are the tags, and the former is more something like applying to attacks and casts?
There's no legend on the webpage explaining them.
i think it has to do with what metamods block?
blue-white attack is crafting bench metamods, black-gold is harvest/fossil/catalyst crafting
added the legend on mod page
You're a legend 
Anyone know of a tool that basically records active search then puts that information into POE ?
So, I dont have to alt tab between game and website?
You can't get things into the client itself, pretty much, and non-hooking overlays have a tendency to get in the way of input.
so can we hook the game?
You may not.
can we just inject code into one of the dll's inside of a code cave or something?
You could have the non-intrusive kind of overlay like the trade-macro like applications have, which draw on a window on top of the game while letting most input through.
Not much value added then, unless you don't have multiple screens.
could I have that type of behavior send an auto message to someone?
so, like lets say imtrying to snipe chayula pures - and I have the overlay show one up - All I have to do is press the "+" button and it auto sends the message to buy to the person?
I dont understand how these people are copy pasting so fast from the trade window to the console
@haughty cradle If it's behaving pretty much like old Mercury Trade, it's probably cool.
You can't do things like have a keyboard button do different things based on some state, or automate input from the outside without explicit action from you.
rip
Some people use forbidden methods. They're dicks.
Hrm..... so I take it that would make my other idea bad as well
I was going to create an AHK script that auto crafted items for me - using python to parse item mods
The idea was basically - have the AHK to roll the item and then copy and paste the modes into a file in memory and have a python script parse the mods - and determine what action the AHK script takes next like "Regal", "Scour", "Augment" etc. etc.
But given that we cant change or automate input from the outside then its rip
Even things like having a button to click a currency and then click an item would be sketchy, even if it was fixed functionality.
Fails the "one action per interaction" litmus test.
anything thats more than basic qol is basically a no
Gotcha - alright well that limits a lot of what I can even think of doing then.
is "mapwatch" okay to use?
yep, its only reading the client.txt log afaik, what is perfectly fine
Is einhar beast weight data still in the game files? https://www.reddit.com/r/pathofexile/comments/859itk/datamined_list_of_legendary_beast_spawn/ this data is from 2 years ago, I would love some more recent data.
284 votes and 227 comments so far on Reddit
@eager rivet still in game file https://poedb.tw/us/Einhar
流亡編年史提供全面的物品,傳奇,寶石資料,最新的遊戲消息,最全面的基礎知識。
url = "http://www.pathofexile.com/character-window/get-stash-items"
headers = {
'Content-Type': 'application/x-www-form-urlencoded',
#withCredentials: true,
"Cookie": "POESESSID=redacted"
}
params = {
"league": "Harvest",
"tabs":"0",
"tabIndex":"0",
"accountName":"druuu"
}
resp = requests.get(url, params=params, headers=headers)
print(resp.json())
anyone know what im getting a 403 forbidden on this
im sure my api key is good
rates?
possessionid*
@rare gulch You probably want https://
(at least that's what I observe in the browser when just glomping on the params as query strings)

please change the contrast for the weightings, chuan. white on light orange is incredibly painful to look at. :D
how about red one?
I wonder, is it possible to author a tool that given a Ctrl-C description indicates what mod sets a seedcraft would have the possibility to remove/add. How does mutually exclusive mods work, are they known client-side?
(also, has anyone already made this?)
hybrid mods and item rarity mods are hard to handle
but in general, that should be possible
seed monster(item) level affect the mod max level?
No idea, all I know is that you can only craft items with an ilvl <= seed level + 10
Huh, are they usually behind?
ya, 5 to7 days behind
Global confirms that the only thing affecting mod pool is item ilvl.
that's great
@worthy cape ctrl+c always sucks because it doesn't copy paste affixes, but mods
trying to turn a list of mods into a list of affixes is something many people have tried over the years, and you can mostly do it but it's an insane amount of work and sometimes there truly is no way of knowing
and for anything to be reliable in terms of crafting outcomes you absolutely need the list of affixes
and to clarify if it wasn't already clear, a 'mod' is just some effect that's a line on a item, like "16% increased Stun and Block recovery"
ack
an 'affix' is an actual property of the item that can give one or more mods, e.g. "Seraphim's" gives "(39–42)% increased Energy Shield" and "(16–17)% increased Stun and Block Recovery"
but different affixes can give the same mod multiple times
or give multiple mods
In particular you don't always know from Ctrl+C the difference between an item that has Seraphim's or Strong-Willed + of Stone Skin
Forgot all about that clusterhug... that's a bag of fun.
Would be nice to have advanced mod descriptions on ctrl c 🙂
ya, really
or advanced mod descriptions on the trade api so one of the non-official sites can make better search parameters
it's such a waste that ggg's trade site gets to see what the mods are but I can't search for a merciless weapon w/o getting search results muddled by hybrid mods
would be really nice to be able to search for specific affixes
Like straight up search "has merciless" affix
is there a posted timeline on pob supporting exerted attacks?
@grave wren what if I want both, T1 and another T1
Hm? If you wanted hybrid as well you'd up the Phys and drop the accuracy option
@viscid mantle https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/1086 my guess is on dev branch this week some time, though as for when next release is, who knows
also not really the right place to ask
Anyone know regex when you have a pattern like:
-----
a
b
c
-------
but a b and c can be missing?
They're seperated by new lines
I was trying something like grabbing a group between the two pairs of ----'s
using some operators
(.*\n|.*\n.*|.*\n.*\n.*)\n
A question regarding RePoE: I can't seem to find a connection between quest names/quest id's/quest rewards and the npc that gives the quest, is that data nowhere to be found in the datamineable files?
for example to connect "Mercy Mission" to Nessa
nvm it's a transitive relationship from npc -> vendor reward -> quest id -> quest reward
hmm but the vendor reward npc is not necessarily the npc that gave the quest and quest reward... tricky
@rapid pike https://regex101.com/r/XkCg0U/1 something like this?
Regex101 allows you to create, debug, test and have your expressions explained for PHP, PCRE, Python, Golang and JavaScript. The website also features a community where you can share useful expressions.
I'm sucking down the public stash tabs api, but the requests are taking 2-5 seconds (and I'm on fiber)
Is there any way to improve this? should I grab a VM in a different physical location?
https://poedb.tw/us/mod.php?cn=Helmet&tags=int_armour
Added a "Import Paste" button
- you can Ctrl+C copy item from game and Ctrl+V paste it
- highlights your mods, shows ilvl and remove unused influences
流亡編年史提供全面的物品,傳奇,寶石資料,最新的遊戲消息,最全面的基礎知識。
yeah red is fine, thanks!
@hushed relic Selecting latest softcore + very strict + preset hide currency below alchemy will hide exalted orbs
i guess thats not intended
@rare jasper Haven't seen that slow rates since the time last league when the infrastructure was hosed.
@rare jasper Are you looking at time-to-first-byte or for the whole request? Most people that fetch the river scan the first bytes for the next change ID and pipeline fetching the next one.
Also, are you grabbing from the dawn of time or from a place like the advertised head on ninja?
yesterdays head
but eventually it will be the current one
The pre-fetch makes sense though, that would likely shave a ton of time off
Sometimes the JSON API used can suck royal balls too, if you're measuring including the decode.
it sucks period, it's horrifically inefficient
do you know of any examples of python scripts reading the first few bytes for the next change id?
so I don't have to recode the wheel
Nope. In Rust I went for some "chunked" function in reqwest to retrieve the body, which produced it in reasonable lumps as it comes in.
There's a fair number of Python peeps in here, tho.
Unfortunately Python probably would require some library written in a lower level to get the speed up.
Does Python has the notion of data streams? I'd assume it has.
If I had to guess - https://requests.readthedocs.io/en/master/user/quickstart/#raw-response-content
That way, you could read the first 128 bytes or so, parse the next_id by hand, and consume the rest
(assuming requests)
I think that'd be faster, even if there's a JSON library that can parse partial stuff from a stream
The part you want to try to avoid is unnecessary heap allocations and garbage collection when doing something like this
If you used to use their .json() and go for some other one, beware that they might be quite slower, someone talked about this the other day and grabbed the one used internally in Requests IIRC.
And unfortunately again, I am guessing dynamically typed and interpreted languages aren't optimized for this
but its not my forte (python)
Should be fine.
Shaving nanoseconds is fun though
Mr. Rate-Limit governs you rather hard anyway.
Some have complained that they can't keep up with processing, where requesting and downloading has been fine surprisingly enough
But yeah, personally my bottleneck was rate-limiting
@simple ravine I'll be buzzword-compliant and say "microservices".
I'll just reach my back-pocket and take out the statically-typed-.net core with aot optimization enabled 🙂
but yeah, my new idea is trying to do it cheaply with azure durable functions
If you used to use their
.json()and go for some other one, beware that they might be quite slower, someone talked about this the other day and grabbed the one used internally in Requests IIRC.
@worthy cape.json()was way faster than what they had iirc
Right.
Gods, my river cloud instance is almost half a year old now and I can't log in to it anymore.
did it grow sentient by now
Considering that it's my own little cloud at work, things not working is quite expected.
Been told to post here in order to be marked as tool-developer, project "Better-Trading Extension", a chrome/firefox extension that adds QoL improvements to the official trade website. cc: @hazy fog
code: https://github.com/exile-center/better-trading
chrome ~9.5k users: https://chrome.google.com/webstore/detail/better-pathofexile-tradin/fhlinfpmdlijegjlpgedcmglkakaghnk
firefox ~1.5k users: https://addons.mozilla.org/en-US/firefox/addon/better-pathofexile-trading/
✌️ folks
That project icon is awesome ^^
Thanks for the tips guys, I'll try to poke it
the processing is taking 0.2 seconds, right now, so I'm not too concerned about it
I just need that request sped up
since it's preventing me from keeping up with the live stream
also not really the right place to ask
@hazy fiber
Thanks for the reply. The description of the channel is "PoE tool development discussion." I was asking a question regarding the development/enhancement of a PoE tool. What channel would be better to ask in, then?
@viscid mantle This is kind of a developer-to-developer interaction channel, for mortals there's #1┃endgame-help or the issue tracker for the project you're poking at, depending on moon phase.
ahh. misinterpreted it, then
Migrating ferrets... now I've seen it all.
@golden thunder That looks like a nifty little thing you got there. 👍
An old friend had a ferret in his closet, as a pet
his apartment smelled not-so-nice, but I'm sure our ferret is one of the nice-smelling ones 😄
@worthy cape annual vacation plan talk soon? 😄
hopefully I can take vacation from next week, going to be much-needed
Staycation started this Monday, six weeks to go.
oh yes holy smokes, you and your long vacations
Trying to figure out how to write C++ again, so rusty.
Slightly intended ^^
my programming skills aren't as sharp anymore.
meh, that sounded more like a dad joke
Anyway, no concrete plans, revisiting doing my tools in C++ to have a better ImGui experience.
I did shower today I smell fine
I have no trouble keeping up with the river on my fully Python + Postgres based parser
It looks like it's going to be a so-so rainy summer, so we'll see how much family-happy-things there will be. Perhaps there will be some time to do something nerdy too
yes
nice, i thought it was an after-thought in python.. something that came with 3.X+?
ooh, now I know what I should try to tackle on rainy summer nights! Elixir!
well Python's async is syntactic sugar on top of something it always had: generators
and generators are the under-the-hood state machine magic you need to implement async anyway
(or at least the user portion of it, it doesn't solve the select problem and the other stuff the scheduler solves)
yeah, just trying to understand the current state of Python, curious... at a distance 🙂
.NET as a comparison also have the notion of Task, ValueTask and IAsyncEnumerable to abstract and optimize threading/async operations
Of course, if you want full control, you can spin up your own Threads and handle your own ThreadPools, but that's generally not needed
for those curious, this is roughly the river fetching portion of my implementation:
and because it's fully async it will start fetching the next set of tabs as soon as it finds the next change_id
I'm guessing the with statement is like C#'s using which will dispose the resource at end of scope?
@simple ravine it's more flexible than that
Python has two magic methods __aenter__ and __aexit__ that get called respectively
when that object is used in a async with X: statement
and when that scope exits (either normally or through an exception)
what you choose to do with that is your choice
so I use it to automatically clean up request/session objects
but I also use it to start/stop throttle timers
that AsyncThrottle class is something I made myself, and I kinda love it
you can just write self.throttle = AsyncThrottle(20, 5) somewhere as an example and then
async with self.throttle.action():
# Do stuff
cool
do stuff will only be able to do 20 times every 5 sec
does it also adapt to rate limit headers?
right now this doesn't, I could make it do so but have been lazy so far
has the river ever been different from 2 per second though?
I think it was 1 per second a long time ago
but nothing that changes often, afaik, so no big deal really
if I were to do it again I would write it all in Rust to really ensure everything is tight and neat
but I only had 1 week before league start to get it up and running so
im looking at some Elixir code right now, and it looks terrifying
I just checked, my database stores 100 million items now
at the end or beginning of the river?
end(ish)
I grabbed the number a few minutes ago from poe.ninja
I doubt I've caught up
since the requests are full
where is the server located?
Not that it matters for this, but please set a meaningful user agent in your tool btw.
Texas behind Cloudflare, IIRC.
Back when it was properly hosed, I had no measureable difference between AWS in the US and home in EU.
It shouldn't be 2 seconds from Canada to Texas... 😦
I have a TTFB of 1.2 seconds in Sweden
Connect: 0.007023 TTFB: 1.571013 Total time: 2.248476
varies a little apparently
yea, mine is too, from about 1.5-3
it's still the vast majority of the delay in my application
and there's nothing I can do about it
no, not really
rate limit counter is started at the beginning of the request, or the end for stashes? i forget
gotcha, thanks
yea, but I can't get the next id fast enough for it to matter...
@compact isle Are there any known heck-ups in the river infra with these delays?
@fickle yew I'm hunting builds on ninja and it seems like the page title is URL-encoded when the name is in a foreign script, while the URL itself renders nicely in Firefox - like https://poe.ninja/challenge/builds/char/Eriol_Maetor/Ханс_Кристиан_Эрстед
@earnest radish yes
all that stuff is found in https://www.pathofexile.com/api/trade/data/stats
then I probably misunderstood your question
good chance that's related to the new helm
my hypothesis
is that only gems that can show up on https://pathofexile.gamepedia.com/Forbidden_Shako have that new id
(The Forbidden Shako has two rolls for what gem to support with)
If GMP has a low ID and Urgent Orders has a high, it's very likely.
then my hypothesis is likely correct
add more support for pseudo mods?
e.g. added element to spells has a pseudo mod
I don't know if that information is available
but it generally matches anything
as long as it's not conditional
e.g. attack and cast speed works for attack speed
but attack speed if crit recently doesn't
that is strange
@earnest radish it does work on poe.trade which is maybe why I remembered that way
River looks fine on our end - remember if you fall behind then you have to load more items which makes things slower
@earnest radish no, we use internal stats for that stuff. I'll make a note to fix attack speed
it would be easier on me if fractured mods were just explicit as well >.> things get weird when a fractured mod + normal mod that grant the same stat are on an item because it isn't obvious what the searcher wants in that case
@compact isle The trade site button to "filter by item stats" doesn't seem to fill in the stat values, which I can understand for most things as the search would be rather narrow - but would it be possible to make it select the right entry in the stats that just have dropdowns, like Added Small Passive Skills grant: #?
(like if you filter by one of the items in https://www.pathofexile.com/trade/search/Harvest/vyZK4kjTE)
I think perhaps we should have fractured mods duplicated in explicit so that you have to opt out of including fractured mods for crafting etc. Probably the least frequent use case
that would be quite costly @worthy cape we'd have to process all the stats in order to get the right numbers
Ah.
(was mostly just curious as I recently discovered the feature and started using it)
I'm slowly moving things away from the dropdown as it's confusing to everyone
unfortunately it seems the game designers are very keen on stat descriptions not actually describing what the stat does and instead giving that responsibility to mysterious generation functions
mod tags are unreliable for this and most cases
adding a pseudo mod for every stat combination isn't really feasible on this end either
Is the basic function of the river ever going to get cleaned up so it's not a giant firehose of duplicated information?
Any decade now.
pseudo is precomputed at index time
perhaps, we need to put it behind OAuth first
tools like that don't use the river API
for your question the answer was the pseudo is the cost of a single mod in terms of searching
@compact isle why would the river need to be behind OAuth first?
I think the current system if it were sharded on an item level rather than stash tab level would be fine (preferably in a binary format with URLs deduplicated)
so that we can tailor it
I think the biggest issue right now is that every single change causes a whole tab to be sent
@compact isle do you mean delta coding on a per-'API user' basis
no I mean with reducing the amount of duplicated data in terms of item JSON
doing deltas on items isn't really feasible with our system
I don't really mean delta coding on an item level
just that you keep track for each api user what they already received
and only sending differences/updates to that
I think the sharding already does that though, it just does it at the wrong granularity (stashes rather than items)
you're mixing terms that don't make sense together
we don't store any kind of state apart from the current state
sorry, when I say sharding I mean the change_ids of each shard
yes, change ids are a property of a stash tab
they cannot be the property of an item
they could be a property of a (stashtab, x, y) tuple
not with the way our database works
yeah I'm sure it'd be a huge redesign
although in theory (ignoring all the messy details) it should be able to be made in a layer on top just for the API
but that's another system to maintain and yadda yadda
let me throw a wrench in the works
as far as the database is concerned an item is allowed to be on top of another item
so stashtab, x, y isn't unique
the item database has enough problems stop bullying it :p
don't let reddit know that or they'll demand that everything becomes stackable 😛
is there a Stash Type list somewhere? CurrencyStash, MapStash, NormalStash, PremiumStash, etc
NormalStash
PremiumStash
CurrencyStash
UniqueStash
MapStash
DivinationCardStash
QuadStash
EssenceStash
FragmentStash
DelveStash
BlightStash
MetamorphStash
DeliriumStash
is what I have
@compact isle is it intended by the way that private leagues show up in the river?
I read a comment somewhere by a GGG dev (I can't remember where or the exact content) that it's no problem some API wasn't behind auth
because (I paraphrase) "you need to know the league name"
but that name gets leaked to anyone watching the river by any user creating any public tab and putting anything in it
thanks
doesn't it stand to reason that making something public makes it public?
in theory yes, but anyone participating in that league can do that (not just admins), even by accident
or perhaps they may assume only the official site knows about those items, and allows them to search it
I don't really think it's a big deal though
was just curious
I mean it's intended that they go in the river like everyone else
I don't know anything about keeping them private
alright
ah. yes the tool developer. the tool developer who developed a tool. the tool developer who developed a tool and pinged me earlier. That tool developer?
+tool dev @golden thunder project "Better-Trading Extension", a chrome/firefox extension that adds QoL improvements to the official trade website.
code: https://github.com/exile-center/better-trading
chrome ~9.5k users: https://chrome.google.com/webstore/detail/better-pathofexile-tradin/fhlinfpmdlijegjlpgedcmglkakaghnk
firefox ~1.5k users: https://addons.mozilla.org/en-US/firefox/addon/better-pathofexile-trading/
ah my embeds
it is done
never let it be said that I forget things! I do, but don't say it 
Oil Stash Tab launched on Garena Taiwan server, and the oil convert rate is 1:1.
1:1? As in, you can upgrade one oil to one of the next tier up??!
ya
wtf.
p2w oil stash tab :p
hilariously that means that clear oil is now the most valuable type, because it's the only oil that can't be upgraded from any other
hey is it possible to find horticrafting station over the trade api?
Apparently they're in the river: https://poe.trade/search/arahetaudahono
@compact isle i know its not exactly your field of duty but is there any chance we can get advanced mod info with ctrl+c ingame and with the copy to clipboard button on the trade site in the future? i know it would make a lot of tool devs happy as we can represent items more accurately and provide better crafting info
yes faust, but how can I have an actual search for that and get a json response ( only need the station and account name as filter )
official trade site does not index the horticrafting stations, so you can't query them. you would have to index the river yourself to be able to search them
i think not even poe.trade is indexing the crafts, just showing the entries, so no queries there either
Don't think you can, it's likely just in the big River you'd need to consume
awakened poe trade DEV is here ? anyone know him ? have a feedback about missing think
https://forbiddenharvest.com is availble for harvest craft searching adn trading btw 🙂
I guess it is optimized for IE and nobody checked latest firefox
works fine for me
FWIW for me it's also like this on Firefox 78.0.1
yeah I complained about that on their feedback channel and they're all like lol works on chrome
there's no need for those to be actual img elements when they can be pseudos or background image
How pathetic.
There's few things worse than web dabblers either intentionally or unintentionally working toward a browser monoculture.
"What do you mean by 'browser`? I just use Chrome." - First inexperienced users, now also some devs
nah, we are in better place now compared to situation 20..15 years ago
also soon chromium will dominate the world 😄
@zinc root That's a dystopia.
Target web standards, try to refrain from using vendor-specific prefixes, accept that different browsers exist and don't be a fanatic.
If one can't be a bit professional when making a site supposedly used by people, one should probably not be in the field to begin with.
Well, there's a nice way and then there's the "lol not even working in <xyz>" way of saying it
especially when most are hobbyists and not professional developers
I was doing web development when IE 4 and Netscape was vastly different
lol
remember the 3x3 table just to add 3px round border for web-page menu? I do 😄
oh the nested tables and image maps
good times.
and actual frames and framesets
i vote to bring those back, they were pretty useful
yea, could make fast cash by tweaking some styles 😄
@velvet fog 3.11.1b will add some (unknown) tags to some stats: https://discordapp.com/channels/174993814845521922/294175535590932482/730898299489484884
I've outlined it in the past here, but I don't recall the exact associations.
I think the entries in the .ARM files and .AO files were red herrings, it's in some .DAT somewhere IIRC.
@earnest radish Our last discussion around this was around here and below: https://discordapp.com/channels/174993814845521922/175290321695932416/595860710672564235
oof, PyPoE.poe.file.specification.errors.SpecificationError: <ERRORS.RUNTIME_ROWSIZE_MISMATCH: 3002>: "Tags.dat": Specification row size 12 vs real size 16
don't bother with the dat64 for the time being it's not entirely implemented at the moment
I'm going to channel this hatred of desyncs and bullshit deaths into coding C++ again.
drop the Data/
what version are you using
steam or standalone
pypoe_exporter config set distributor GGG
it might not find it if you didn't install it properly and just copied it from somewhere
it uses the windows registry to determine the install path
still need to fix the syntax :P
pypoe_exporter dat json M:/out.json --files CraftingItemClassCategories.dat
use -h on the command
it tells you the parameters
Is unique item mod data stored somewhere in content.ggpk? I found the modifier data I'm looking for but I'd like to cross-reference the actual item to make sure I'm looking at the correct stuff in Mods.dat, poedb shows the modifiers unique items have but doesn't list the internal names
nope, you do it by hand.
oh, looks like I was mistaken actually -- it is listed on poedb, just hidden
matching mods to uniques manually sounds horrible, lol
if this is updated manually that might explain why I'm seeing mods on poedb that don't exist in Mods.dat
like what?

