#tooldev-general

1 messages · Page 9 of 1

worthy cape
#

Haven't touched a DAT viewer yet, heh.

waxen musk
#

oh, its grantedeffectsperlevel, idk maybe hardmode version or smth

carmine merlin
oak estuary
#

Anyone know what references EffectivenessCostConstants now?

primal schooner
#

oops

tranquil token
#

@velvet fog Could you please update Text Audio for Affliction League? I'm interested in POE Lore and there are so many interesting Lore in this league just like the last! https://poedb.tw/us/NPCs

clever gull
#

Hey guys since Affliction we lost the @from and @to keyword for whispers in client.txt.
This remove the ability to tell if a message was sent or received and cause some problems for trade tools...

If a player sent some messages to buy an item we do not have any way to tell if it's an "outgoing message" and the tool will think that it's an incoming offer.

Here's the reddit post that I wrote to get some visibility:
https://www.reddit.com/r/pathofexile/comments/18e5miy/all_trade_tool_broken/

Reddit

Explore this post and more from the pathofexile community

compact isle
#

I've passed that along

velvet fog
tranquil token
compact isle
velvet fog
#

PoEDB is almost ready with the content related to Affliction League.
https://poedb.tw/us/

candid sluice
#

Is Awakened PoE Trade making a sound when you click CTRL+D (pricecheck) for anyone else?

pseudo ocean
#

It is possible to resolve the issue ?

elfin night
#

I'm unable to get the item affixes to show for price check when my key "Show Advanced Item Descriptions" is bound to "G". It works when bound to ALT but I use a ALT for a different key. I had this working with my old computer so I'm not sure what changed on my new computer. I believe it might just be a setting I need to change, but I'm unsure. This is my keybinds

waxen musk
#

so what are gem icons split up for? middle image is always empty, so you just put left on top of right? or is there something more fancy?

frank drift
worthy cape
waxen musk
#

is that for special gems?

worthy cape
#

There's parameters somewhere that is fed into the shader to shift the hue and affect the luminance.

#

Transfigurations, but not even sure if the base gem is a no-op yet.

#

The last column in GemEffects is probably an index into some lookup table.

#

Same art, just shifted.

#

(the lower is Vaal, so the golden art is modified somehow too)

waxen musk
#

so they dont ahve separate icons for vaal now?

worthy cape
#

Don't know.

#

Considering that the transfigured gems can be Vaaled, I would suppose that they use the same mechanism.

waxen musk
#

vaal icons have a separate folder

worthy cape
#

Ack. Same split shape there too.

waxen musk
#

what happened to the little ornament things on passive tree lines? are they gone now?

worthy cape
#

The little nubbins on straight connectors? Seems to still be there on the web tree viewer.

waxen musk
#

oh indeed. i just got a screenshot from someone to check how azmeri stuff looks and it didnt have the nubbins

#

so i got ingame myself and theyre still there 🤷

worthy cape
#

Still meaning to add them to PoB when updating the tree, if performance allows.

waxen musk
#

i remade my tree in webgl, its super smooth now

worthy cape
#

Did some digging on the gem rendering - got preliminary constants and the proper art regions used: 78x78 px.

waxen musk
#

i just made them 80x80

#

works just fine if you take the left 80px and stick them on top of the right 80px

#

not like the middle part is used for anything

worthy cape
#

It is actually used by the game, it draws the (empty) middle first, then the right, then the left.

waxen musk
#

ye i assume its like flasks

#

its meant to be the back layer but theres nothing there

worthy cape
#

The "proper" packing is three 78x78 images densely packed left-to-right, with 2px of padding below and to the right; probably to make it a multiple of 4.

waxen musk
#

any idea how it recolors the base? i assume the last column in GemEffects controls the color but since its just 1/2/3 thats not very helpful 😄

worthy cape
#

The number is a key into a lookup table of constants.

#

There's six such alterations, str1, str2, dex1, dex2, int1, int2. 3 is the baseline art, it's not touched at all.

#

The shader reads out a bit of luminance influence, converts RGB to HSV, offsets the HSV values by three constants in a special way, reconstitues a RGB colour, and mixes in the luminance influence based on a fourth constant.

#

I haven't found the table that contains these constants yet, but I know what they are.

#

Might be hardcoded in the exectuable for all I know, I don't touch that.

waxen musk
#

sounds very similar to D2R item recoloring

worthy cape
#

Also a bit of desaturation and whatnot, but that might be more regular UI stuff.

waxen musk
#

oh i didnt realize the shader source codes are included. thats pretty weird tbh 😄

#

thats alot easier than having to decompile them

worthy cape
#

Most of the time only in slivers that get munged together by the material system in very complicated ways - the UI primitives are an exception.

#

I might write it up after I've gotten it into the wiki code proper, still unsure about some language constructs.

waxen musk
#

uh where do these lines come from (in github repo)? i cant find anything like it in the files

worthy cape
#

There's a similar file in the game data, possibly part of a spritesheet.

waxen musk
#

i mean for atlas. i checked all the arcs, they dont look quite the same

worthy cape
#

"F:\Temp\poe\contents-3.23.0\art\2dart\passivetree\atlaspassiveskillscreencurvesactivebluetogether.dds" etc.

waxen musk
#

these are super smooth, all the ones i see in the files are kinda weird

worthy cape
waxen musk
#

oh. theyre not in UIImages

#

so i guess the game uses these instead of dirty looking ones in uiimages?

worthy cape
#

I don't remember off-hand which ones it uses where.

#

For PoB we use the export assets as they're available before the leagues and are of a reasonable size.

worthy cape
velvet fog
#

WoW

formal kraken
worthy cape
#

Colours are slightly off compared to in-game, not quite sure where I might be off, maybe sRGB data somehow.

velvet fog
#

still trying to recolor the gem using imagemagick

worthy cape
#

I started out trying to compose some Pillow "eval" operations but it was a bit too restrictive to work in 8-bit HSV converted from 8-bit RGB; as the original logic is in shader floats.

#

It would be interesting to know if someone finds the float constants there in a table somewhere, they feel like they'd be easily tunable by designers.

tranquil token
worthy cape
#

@velvet fog @waxen musk @formal kraken Ran some tests now that I've woken up.
The source art seems to be sRGB and you should take care to convert into a linear colour space to do the math, and convert back on save again.
In my case I added mapping functions that I run just after I've converted the 8-bit channels to floats and again just before converting back, but your libraries may have different concepts for this.
GPU shaders work in linear colour space and there any eventual colour space conversions from the storage format happen on texture sampling and shader output.
Attached is the subtle differences and two pieces of ground truth from the game:

candid sluice
#

Also, make sure to check your Documents, i had like 5GB of random clips 🥲

obsidian cloud
#

omg lifesaver thanks

worthy cape
#

My favourite is still Loom, which shoots confetti on your screen.

#

3.23.10001 just released by the way, with affliction stuff.

obsidian cloud
#

it wouldnt be so bad if the sound werent also super annoying haha

spare isle
#

How do I find my twitch prime on path. It’s all connected but I can not see it?

waxen musk
#

If I open it in browser it comes out fine

velvet fog
#

fine for me too

waxen musk
#

Weird. Curl works fine, but if I do fetch in nodejs I get cloudflare error page

waxen musk
worthy cape
# waxen musk I hope I got the right colors 😄

Take a look at the str1-sls and dex2-sls correct images from my screenshot, those are the easiest to spot by eye, with the lightness of the dark green and the white rim glow of the pink. The ones without "sls" lack the proper sRGB handling.

harsh raft
#

@civic crane Hi there i tried to reinstall but it wont help. Got only this 3 leagues. Ty

velvet fog
#

Neversink filter error: BaseType "Absolution of Inspiring"

#
Show
  BaseType "Absolution of Inspiring"

to

Show
  BaseType Absolution
  TransfiguredGem True
frank drift
worthy cape
#

GIGO

#

Well, the "in" wasn't garbage I guess 😄

frank drift
#

ingesting new and unknown things may induce vomiting

quick dune
#

@rigid oxide check dms please

flint parrot
#

is it not possible to get the beast type in public stash river now? both typeLine and baseType are now "Imprinted Bestiary Orb"

craggy tangle
#

Uh, can someone help me? Why did this happen to my PoB when I was just dragging the tree?

craggy tangle
#

That surely was it

#

LOL thank you!

worthy cape
#

Dec 11, 2023 4:27 AM (GMT+1) - We're currently investigating the following issues, with more to come:
..
Fixing an issue where Bestiary Orbs aren't displaying the monster's name.

waxen musk
#

i thought there was a bug in my rendering, but the game has the same 🤔

velvet fog
#

MapSeries use Azmeri name

carmine merlin
sweet zealot
#

is there a tool i can use to remind myself to press my flasks at the beginning of each new area?
im playing a Coruscating Elixir build and i cannot be trusted.
especially in lab..

pallid wraith
#

Can always just get ever so slightly better sustain and put it on use when full

sweet zealot
#

most of the time i just hop into something at the beginning of a map and instantly die

#

if it bugs me enough i could make some ahk that monitors the client.txt, and every time i enter a new area, some icon appears. and goes away when i push my flasks

#

a huge "push your flasks stupid" icon

frank drift
#

laillokenui has several UI tools though, like displaying your buffs wherever you want, like the middle of the screen

woeful pebble
#

@velvet fog Heist page is using the wrong image for ultimatum icon. Wasn't sure where to ping you shrugR

foggy bear
fallen wagon
#

Anyone know how to get ahold of the developer of PoeMate? None of the contact info in the app works

placid storm
waxen musk
#

does inner/outer radius do anything here?

oak estuary
#

Yes, for items like Thread of Hope

waxen musk
#

oh, so it has a ring instead of radius, i see

worthy cape
#

The query can assumedly contain way more interesting JSON, which the trade site resolves into a nice shortened URL.

waxen musk
#

is there a table of directions per item type somewhere, or are they all hardcoded? stuff like "Place into an allocated jewel socket ..."

worthy cape
#

Considering that the wiki exports help_text, probably wired up somewhere.

#

Text lives in ClientStrings.dat64, seems to be wired up via .it files if I'm squinting right?

#

abstractjewel.it for example has:

Base
{
    x_size = 1
    y_size = 1
    description_text = "ItemDescriptionPassiveJewel"
}
#
  {
    "_rid": 1686,
    "Id": "ItemDescriptionPassiveJewel",
    "Text": "Place into an allocated Jewel Socket on the Passive Skill Tree. Right click to remove from the Socket.",
#

So you probably have to implement a bit of type inheritance to find the correct string for an item.

#

baseitemtypes.dat:

primal schooner
#

Nov / Viper, any chance there's been any chatter about revamping Betrayal anytime soon, or at least making the crafts containerable ?

#

i'm wondering because I'm working on a db-based web app to help facilitate selling / purchasing crafting services, and I don't want to put a ton of resources into it if there's changes in the pipline

#

or start with a different more perm service

worthy cape
#

I find it quite unlikely that there'd be any advance knowledge in public about such a change.

#

The league has lasted for five years by now with some adjustments along the road, being host to a bunch of mechanics.
Itemization of the crafts would be a drastic change with wide-reaching implications to the economy and feasibility of crafting, like a mini-Harvest; it'd require such rebalancing that you might as well redo the whole thing.
I don't also foresee them implementing anything like the WoW enchantment UI where you can lend out an item for a particular craft without giving the item away either.
Redoing the mechanic would mean having to have good solutions or rehoming of things like bench crafting, everything around veiling, all the various benches with significant purposes, etc.

primal schooner
#

yeah

#

anybody get rate-limiting issues with website and awakened?

#

is it possible i've used Awkened so much I've gotten IP / account rate-limited for 1h+ ?

#

both on site and using awakened (in game)

worthy cape
#

Headers for your request tell you which limits are violated.

#

cfr.

x-rate-limit-account
    3:5:60
x-rate-limit-account-state
    2:5:0
x-rate-limit-ip
    8:10:60,15:60:120,60:300:1800
x-rate-limit-ip-state
    2:10:0,2:60:0,2:300:0
primal schooner
#

where is that ?

worthy cape
#

That's from the POST you make when searching.

primal schooner
#

right where do i find that in the browser info (F12)

worthy cape
#

You probably did 60 requests in 300s.

primal schooner
#

console info?

worthy cape
#

Network pane, tracks all new requests you make, yep.

primal schooner
#

no info in network

#

even if it's open after submitting request

worthy cape
#

If you use inferior browsers, the data will be slightly elsewhere but still in there.

#

In any way, the current limits are the ones that show there.

#

8 req in 10s, 15 req in 60s, 60 req in 300s.

primal schooner
#

yeah i don't even get that info

worthy cape
#

Why are you looking at the console?

primal schooner
#

it won't even let me submit a search even after reloading hte page

#

so no network activity

worthy cape
#

Well, look at some other request then, as it's sourcing the rate limit from somewhere.

#

I don't exhaust mine 😉

#

Earn your pay, as my cow-orkers love to say.

#

Or look at headers with a curl or something.

craggy beacon
#

cow-orkers
toxic xdd

primal schooner
#

would* any of the information in here helpful?

worthy cape
#

Wrong request, that's for GA.

primal schooner
#

so reopened broweser and went to /trade

#

and when i go to submit search, i'm getting blocked by rate limit. idk how it does that w/o communicating, but nothign happens on network after inital load of page...

#

that info in network is from page reload

#

possible it's loaded into the .JS?

#

when you laod the page intially, and then calc'd on the front end?

#

not sure why I'd be rate limited on the website and on Awakened (at the same time for the same amount of time) unless it was IP / Account specific...

worthy cape
#

It's possible that the rate limit information is also embedded on the page as you load it, never bothered looking at anything but the actual endpoints you hit for a search.

primal schooner
#

it randomly disappeared

#

won't even come up now if i spam web serches

#

and comes up with like 30sec rate limit if i do too many w/ awakened

#

maybe just a snafu on GGG's end?

worthy cape
#

You're probably just skirting close to the limit and previous offenses expired as you're messing about.

#

You may be missing something significantly, hitting Search sends off an XHR, getting you a 200 or 429.

#

There's no initial information in the page about hitting the limits.

primal schooner
worthy cape
#

Your previous screenshot suggests that you managed to hit the half-hour timeout around 300s before it, for 1800s.

#

Only takes 60 searches within 300s to hit it.

#

The solution is simple regardless - don't.

primal schooner
#

so 8 w/ 10 sec gets you 60 sec

#

8:10:60, etc

worthy cape
#

yep

primal schooner
#

that's what that means?

#

kk

worthy cape
primal schooner
#

but from the website?

worthy cape
#

Same underlying concept.

primal schooner
#

or was it jsut because i used awakened

#

and that applied to my IP / account

#

and was affecting the website adter?

worthy cape
#

The website uses an underlying internal trade API.

primal schooner
#

same as awakened

#

kk

worthy cape
#

APT also uses that underlying internal trade API.

primal schooner
#

I’m assuming that goes for all apps hitting any ggg api endpoint?

#

Or is trade separated?

worthy cape
#

Any request from your external IP to any endpoint with a policy counts towards that policy.

#

Different policies count individually, some endpoints have the same policy.

#

Like Novynn notes in that post, both searches and bulk exchange queries count(ed) towards the same policy.

primal schooner
#

Ah. Kk so it probably doesn’t help I’m trading and using APT for my trade account while using the trade site, and then APT and trade website for the account I’m playing on

#

At least it didn’t last the full 1600 sec

worthy cape
#

There's multiple rulesets active, Account and IP.
Account tracks per-account, IP tracks per external IP.
If you're logged in you (back then at least) got a more lenient IP limit.

primal schooner
#

👍

waxen musk
#

is there any way to determine which passive replacements roll for a given local_unique_jewel_alternate_tree_seed?

#

oh theres a calculator for it, ill check it out

mortal wave
#

where does poedb get its data from? is it all datamined or just pulled from the wiki?

hazy fiber
#

where would the wiki get its data from then?

mortal wave
#

no clue. People contributing?

oak estuary
#

It datamines all the way down

worthy cape
#

poedb is also technically a "wiki" in the looser sense of the word as it can be edited by individual contributors to write prose about things.

#

The wiki tries to source all its data-like information from first principles rather than consume something that someone else has prepared. I have the impression that poedb also does the same thing.
This is good as we then have two separate stabs at each concept even if there's sharing of fundamental things like guessed data table specifications.

#

In general, the most handwrought thing tends to be unique items, as the mod mapping on those is an art.
Things like interpreting the monster definitions and AI scripts is also one of those places where you have to fill in a lot of the gaps.

velvet fog
#

Added monster level selector, you can choose from level 1 to level 90

waxen musk
#

is there anything that prevents That Which Was Taken from rolling two mods of the same type, i.e. 3-4 and 5-6 area of effect per endurance charge?
they cant be checking for mod groups, because all balance of terror mods have the same group 😐

#

btw @worthy cape is updating the wiki, right? (blue/green/red) nightmare jewels are missing radius 👀

worthy cape
#

I'm largely innocent these days 😄

waxen musk
#

hmm so theres no logic for unique mods, its all server side and we can only hardcode it i guess?

worthy cape
#

Oh, yeah, didn't even reflect on that it was unique items. They are very underdescribed in client data and their mods tend to have general unspoilable names.

#

All miners piece them together based on trade results, river contents, teasers and game evidence.

waxen musk
#

hmm what about mod domains, theyre not meant to be related to each other, right?
wiki says jewel corruption mods can spawn on normal, timeless and cluster jewels. but cluster jewels have a different domain, which has no corrupted mods 🤔

wraith jasper
#

Anyone know if there's some tool that'll start and display a timer overlay when I press a button?
I'm playing spectres and my flasks are like 50% of my damage, but because their effects don't apply to me they don't display a duration
I try to press them a bunch but sometimes I forget

waxen musk
#

livesplit does that, not sure if thats what youre after

frank drift
#

I use mercurytrade timers all the time

wraith jasper
#

interesting, mercury could be an option, thanks for pointing that out!

waxen musk
#

err did they just add a new mod generation type or why did my tool suddenly start crashing when it worked fine half an hour ago o_o

#

AzmeriDustWarden / AzmeriDustWardenForest etc 6 mods are generation type 33 now

rapid pagoda
waxen musk
#

timeless jewels dont have their own domain so thats normal. but cluster jewels are in a different one

lyric egret
clever thistle
#

if it's only reading your Client.txt then yes it's fine

#

(subject to GGG changing their minds of course)

frank drift
carmine merlin
zenith zodiac
fickle yew
flint parrot
#

looks like the base gem name is located in hybrid.baseTypeName

waxen musk
#

How does the game determine the order of notables on cluster jewels? I mean if the jewel has 3 notables, how does it choose which one is first, which is second and which is third? Is it deterministic (i.e. sorted by PassiveSkill id) or depends on the order in which the mods were rolled?

#

or does PassiveTreeExpansionSpecialSkills determine the order?

velvet fog
#

pob has implemented it but I can't understand it.

waxen musk
#

also is there any mapping from stat ids to skill ids for extra stats on small nodes? i.e. how would you know which stats local_affliction_jewel_small_nodes_grant_base_cast_speed_+% adds?

#

i think i got the order, PassiveTreeExpansionSpecialSkills appears to match what some other tool suggests

zenith zodiac
waxen musk
#

thats only for notables and keystones, it maps item stat ID to passive skill ID for those

#

but ye it seems to work for positioning the notables. i just need to figure out how to get the correct stats on small nodes now

frank drift
#

yeah cluster jewel notables are ordered by a table, forget which

waxen musk
#

ok now im confused how notable indices are chosen. according to this table, 4 slot medium jewel uses indices 0 6 8 4. which checks out. socket is index 6. this leaves 10, 2 and 0 for notables, but in-game it uses 4 and 8...

#

i suppose theres a fallback to just use all remaining slots?

worthy cape
waxen musk
#

i think notableIndices is reasonable enough, it probably just fills in the rest with remaining slots once it runs out

#

besides it cheats with slots on medium jewels anyways, so a 4 node jewel has them arranged evenly instead of 0 6 8 4 as that table suggests

waxen musk
#

how come passivejewelradii still have the old values >.>

candid tapir
#

where can i ask for game trouble?

pallid wraith
frank drift
waxen musk
#

is there a table of tree stat conversions for radius jewels? or is it all hardcoded?

worthy cape
#

What kind of jewel?

waxen musk
#

like lioneyes fall

#

i just did this manually, idk if i was supposed to find this somewhere 😄

keen dagger
#

why do my game keep cleaning shader cache eveytime i launch it ? it makes eveything taking forever to load

clever thistle
#

@keen dagger this channel is not for game support; you should try pathofexile.com -> support forum, or email GGG support

waxen musk
#

oh the whole site went boom

waxen musk
#

i got a question about authorization workflow. once you obtain the token, is it okay to hand it over to the user so the browser can make requests directly? or is that a bad idea?

waxen musk
#

probably not because someone can nuke rate limits?

hexed cedar
#

There have been a lot of crashes on this game, have you guys had a problem with this

#

I never had problems in previous leagues

carmine merlin
#

PoB update out with all the new Transfigured gems

frank drift
#

I had to re-import my character to get gems to show up, which is fair enough

#

I'm sure they're just discarded if not recognized at import

calm adder
lean phoenix
rapid pagoda
lean phoenix
#

All is set:

'return file_get_contents($url, false,
stream_context_create(
array(
'http' => array(
'method' => 'GET',
'header' => 'User-Agent: OAuth SimpleFilter/1 (contact: darek334@gazeta.pl) StrictMode',
'header' => 'Content-Type: application/json; charset=utf-8'
)
)
)
);'

compact isle
#

the site was just in maintenance bad timing

rapid pagoda
#

Remove the second one; Content-Type is meaningless on a GET request

lean phoenix
#

return file_get_contents($url, false,
stream_context_create(
array(
'http' => array(
'method' => 'GET',
'header' => array(
'User-Agent: OAuth SimpleFilter/1 (contact: darek334@gazeta.pl) StrictMode', 'Content-Type: application/json'
)
)
)
)
);

rapid pagoda
#

You really don't need the Content-Type header. Seriously. On a HTTP request or response, it means "here's what's in the body of this message", but a GET request doesn't have a body

#

The header that would mean what you're thinking of here is Accept, but the content type of the resource isn't negotiable

lean phoenix
#

Ok I will change this later, because I have a lot to change. In OAuth They advice add Content-Type: application/x-www-form-urlencoded and in filter update Content-Type: application/json, but maybe there are changes,,, most important now works, later i will change all as You mentioned

#

Yes and It would be true what you write because in update is POST, thx for excellent tips !

torpid adder
#

Anybody know if there's a way to copy an error generated by PoB?

worthy cape
torpid adder
worthy cape
#

Nope.

#

It's not too much rocket surgery to add copying given that we have clipboard functions, but it's work that someone actually has to think about and do.
There's also the thing that there's oftne added benefit of seeing more of the window to know what the user actually did.
The primary gain would be searchability in issues.

torpid adder
#

Guess other cases it might show more, in mine it's just a blank black window so doesn't really give any more context and I just clipped the part with the error itself.

waxen musk
#

Ok so I got a serious question about API. According to the docs, it's okay to store the token on user machine (and probably have them do requests directly? not like we can prevent it since they have the token):

You must not share access tokens with anyone but their owner. Since they do eventually expire it's fine to send them to the browser to store client-side in a Cookie or local storage as long as you do so using a secure method such as HTTPS.
The question is, how does it impact rate limits? If they make 50 billion requests with their token, who would be to blame?

grave wren
#

your tool most likely will have to handle rate limits

#

it's not on the user to use the api correctly but on the tool dev

silent tree
#

ya if ur users are flooding with requests through ur tool, it's because u let them do it

golden knot
#

When registering a new OAuth client with GGG, do I need to know every possible scope it will ever use, or can they add more scopes down the line if I decide I need them? (I assume the latter but I want to confirm)

craggy beacon
golden knot
#

thanks!

#

And I assume when you have a website that will be interacting with player's accounts via their own initiated requests, the rate limits will be X-Rate-Limit-Rules: Account, not Client. I get that rate limits are dynamic, but the examples seem way too low to be client-level if a platform has more than 5 players on it at a time

#

e.g. 10:5:10

craggy beacon
#

yeah most will be account

golden knot
#

great, thank you

sullen socket
#

Ok, im new here and have some questions.
What is the GGG statement for data mining? I guess they don't care but is it allowed to talk about it here?
I want to download character sounds or more like speeches (quest lore etc) and also have access to copy paste quests/lore/talk text.
How do I do this from zero knowledge of data mining in PoE?
Am i even in right place to be? templarLul

formal kraken
golden knot
#

I don't think you'll get an official statement on it from GGG, because I'm sure they want to reserve the ability to pull the plug if it ever gets out of hand. But it's widely known that the .dat files are available and readable. MANY tools responsibly rely on them to function; including the community wiki that GGG hosts.

sullen socket
#

Thank you very much, that will do :>
Upon further examination, that won't do. However, Pogo should be able to, so thank you

rapid pagoda
compact wigeon
#

Is there any intention to add some way to query the name history of a character through the API? I have some concerns as an event organizer with users using self-serve name changes to try and bypass rule enforcement and cheat. We can in theory add logging for that ourselves, but I'd feel more secure with an endpoint giving me definitive proof of malicious name changing. To be more specific, our event involves having identifiers in the character name, and players have in the past tried to impersonate other teams with their character names to do trade actions.

frank drift
#

you may want to mail GGG directly, though Novynn reads stuff in here eventually

exotic egret
#

We don't actually even give you the ability to review your own name history, let alone give access to third parties. I'll raise it with the team though - but it might be a while before we have anything

formal kraken
#

I didnt even know you can rename characters

exotic egret
#

Added in 3.22.2b

frank drift
#

the self-serve rename anyway, customer service always could, open secret I guess

worthy cape
compact wigeon
#

We'll make do, glad to hear it's being raised internally for a possible future addition though!

devout dust
#

Or is there any place where I can find it ?

worthy cape
#

I don't think there's any central place that notes any down, but sometimes there's people who share an approximate one in chat.

devout dust
worthy cape
#

Not really, just the general terms involved; not sure if Discord supports any sufficiently powerful pattern matches.

devout dust
#

ok then I guess I'm going to spam GGG with stash tabs requests until I reach some Affliction data

frank drift
devout dust
frank drift
#

presumably

worthy cape
devout dust
#

I am getting lots of HTTP 520 while trying to read the stash tab stream...
Is this unusual or should I adapt my code to wait and restart on error... ?

cobalt path
#

hey guys I wanna scrape data from trade site. I'm using beautifulsoup in Python but can't seem to get the data. on the bulk item exchange. Anyone who tried this before?

frank drift
#

skill issue

worthy cape
#

It's strongly recommended to not scrape any part of the web site interface.

#

Consider looking into the underlying API if any for constructing trade searches, not sure which parts are available where.

cobalt path
worthy cape
#

Many trade aggregators process the public stash tab feed, the "river".

#

From that firehose of data you can make educated guesses.

formal kraken
#

Don't need to scrape right, the internal trade API is already using json?

worthy cape
#

In general, interfacing with the trade site is kind of only supposed to be on behalf of an user, for their immediate actions.

craggy beacon
#

Has there ever been any official ruling on interfacing with the trade site in response to a specific user action (Awakened Poe trade style)

devout dust
#

ok my bad

devout dust
#

I'm reading the Public Stash API stream (A.K.A "following the river") but I'm not sure I am fast enough to do so and I feel like I get late and never reach "present" changes 🤔
Is there any way I could check how "late" or how "current" I am ? I haven't seen any timestamp or date at all in the data retrieved from the API.

hexed mesa
#

you could probable get next change id from poe.ninja and wait until you get to it yourself, not exactly real time tho

devout dust
civic crane
#

it's also not that rare to get empty array of stashes

worthy cape
#

A common trick is to not wait until you've read the whole payload to queue up the next request, but instead read out the first fistful of bytes to get the next ID early and then process the rest at your leisure.
Still subject to rate limits but may help with not slipping.

devout dust
worthy cape
#

Some libraries make it hard to get partial responses as they come in, but it tends to be worth finding out.
Beats the usual .text and .json properties.

civic crane
worthy cape
#

Ooh, I forgot all about that header. That's nifty.

#

I'm sometimes tempted to apply for an app just to have access to the API for helping people, but I'm probably better off not having the temptation.

waxen musk
# formal kraken This is covered in the docs per client type: <https://www.pathofexile.com/develo...

It's a confidential client, all the secrets are on the server and authentication is performed securely. But the docs suggest that you can send the access token to the client and store it in browser storage, presumably to perform requests directly using fetch (which is a lot more convenient than having to proxy every request through the server, and also store the token somewhere on the server). My concern is that someone could grab the token and spam requests with some script, exhausting our rate limit - or is that not how rate limits work?

formal kraken
worthy cape
#

It kind of feels that depending on what kind of method the Rules header for an endpoint is, the user ought to only be able to screw their own account over, even if your application ID may be implicated in the server hits.

#

The way I read the docs document is that it's more about squirreling a token away on a client in a cookie or client storage for handing back to the server again when it needs to be used; rather than being able to use it on the client itself.

#

With the intent of the text being about how to protect the token from eavesdropping by an external party, not covering your concern about owner misuse.

craggy beacon
#

If you have a change ID in the future (from poe-ninja or the trade endpoint) you can take each section (split by "-") and subtract the same section from your change ID. Then sum the diffs to get a cumulative difference. If you compare to the trade site ID you will never catch up because of the delay but over time you can see if you are falling further behind or staying consistently behind (the delay)

lean phoenix
#

Soon for SimpleFilter will be started site to personlize, all data are synchronized with data from poe.ninja maximal every 6 hour, wish luck....

covert drift
#

Hey, does anyone know how the search query for transfigured gems has changed?
Adding "type":"Boneshatter" still works fine, while adding "type":"Boneshatter of Complex Trauma" states that the search is no longer valid

worthy cape
#

Have you tried making a search and seeing how the query looks in the browser?

#

Looks like it converts the type into a composite one:

#

The transfigured gem variants are BlahaAltX and BlahaAltY in the dataset. The tradesite uses a discriminator in a similar vein.

covert drift
#

I see that there is this disc option, but simply adding that to the query does not work

zenith zodiac
covert drift
#

Thank you!

devout dust
#

Am I the only one to get MANY HTTP 520 errors while trying to read the stash tabs API (AKA "follow the river") ?
This is getting really annoying...

worthy cape
#

What's that, cloudflare challenges?

devout dust
devout dust
#

Really this pisses me off

#

I can't read the stash tabs stream, after like 10 requests I always get this

worthy cape
#

Are you adhering to the rate limits and using a correct user agent?

#

Supposedly a CF ray ID helps GGG troubleshoot.

devout dust
#

Correct me if I'm wrong :
1 - If my user agent was incorrect I would not be able to retrieve any data (when I first started coding it was wrong and I couldn't do anything)
2 - If I was not respecting the rate limits then I would get HTTP 200 or 429, as specified in the docs

#

Anyway I'm going to add some delay just to check if that's the actual issue

shadow flax
#

I'm looking to update my current app with more scopes, trying to add scopes to my token generation and generating a new token but keep getting "error":"invalid_scope","error_description":"The scope requested is invalid for this client"

#

so say something like this: "scope: account:stashes account:characters

#

but the correct formatting would be?

primal schooner
#

there some reason poe.ninja economy doesn't support value of new corpses?

compact wigeon
shadow flax
#

Tried that now, realized that might be the start

frank drift
primal schooner
#

ok, didn't know if there was a sepcific known reason. both poe.ninja nad poestack don't have them listed

waxen musk
primal schooner
#

API go down?

formal kraken
#

There is a skillgems.dat is there also one for support gems? Probably the same questsion, indexablesupportgems where does the reference in the SupportGem column go?

velvet fog
#

support gem also inside skillgems.dat

formal kraken
#

oh derp, thanks!

frank drift
#

the differentiation is recent

formal kraken
#

I used to just go through visualidentity but now I need more information to get the assets + the shading for skill gems 😦

waxen musk
#

uh the stat base_number_of_additional_arrows got changed to number_of_additional_arrows? do stat names often change like that?

velvet fog
#

a few every season

worthy cape
#

@velvet fog have you seen any table or data file that describes the shader parameters (four floats) used to shade the gems?

#

I stopped looking after I had the exact values.

velvet fog
#

no idea

#

GemEffects point to GemItemVisualEffect which is virtual table

desert crag
#

Hi, im going through this old discussion on if this would be against TOS or not. The idea is to be able to search for the mod you want on an item your alt spamming, and when the item is highlighted, the tool would do something to stop you from atling over the item (e.g open an overlay so clicks dont register).

Would anyone what the ruling on something like that is?

https://www.reddit.com/r/pathofexile/comments/p7aqmy/alteration_spam_macro_compliant_to_gggs_rules/

Reddit

Explore this post and more from the pathofexile community

pallid wraith
frank drift
desert crag
frank drift
#

you could implement something that prevented rolling after a ctrl+c, but the user would still need to ctrl+c after every click

inner fjord
#

hi! I've been trying in vain to dig out data on the new spectres in this league. has anyone already figured out how to read the 2.23 .dat files, or is it known how the original schemas - the stuff in PyPoE / RePoE - were found?

or, I guess, have raw monster attack statistics been included in the game dat files in the past, or is that something that would be server side only?

I've used https://github.com/HeartofPhos/exile-export to get .dat files, but I'm struggling to find a foothold on figuring out what columns any given file has to decode it.

#

or, at least, part of it. i'd be really interested in how the contributors of that repository reverse engineer the schemas, so that I may try to reverse engineer more

carmine merlin
inner fjord
#

like - skill tags, and damage numbers if I can get them. I'm... not especially optimistic about finding those in the dat files, I guess, but I figure I'd like to at least try to look

#

base stats like life would also be good

#

Do you know if that's something that would even be contained in the local client?

or like, how much information is server-side-only in PoE?

#

I'm interested enough that I'd like to look even if I couldn't find that information, though. that would just be the best case: getting tags and base damage for each skill each corpse uses, and base life, resists, armor rating, and evasion rating for each corpse.

I mean I know I'm not the only one who wants this information, but I haven't found anyone who's gotten it so far.

frank drift
#

if the data is possible to get, chuanhsing will get it

#

so I'm skeptical there's much else you could get from dat files

#

anything further would take manual testing

inner fjord
#

ah ok, makes sense

carmine merlin
#

Yeah, poe.db has all the data we know about for each spectre

inner fjord
#

hmm

#

I guess, even if I don't expect any success, do you know if chuanhsing has written anything on their technique for decoding the data?

carmine merlin
#

Nope, but you can look at how we do it for PoB

#

The .lua files in the above link are generated from taking the .txt files and grabbing the relevant data in the ggpk

#

There are a bunch of columns in the ggpk that could be related in some way to minons but it's very hard to tell

inner fjord
#

huh, interesting, cool!

I guess I had not found the right stuff in the ggpk, I will have to look into how that data is extracted. If you can get the life and fireResist, even if not the skill tags without specifying them manually, that's definitely what I'm interested in

#

thanks for indulging my questions here

carmine merlin
#

Resistance values are in MonsterResistances.dat and the life values are in a column in MonsterVarieties.dat

worthy cape
#

(TFT news post on a ban wave, for you peeps that aren't there)

fickle yew
#

Anyone found out where the alt_x and alt_y discriminators for transfigured gems are found? They don't seem to be in the static or stats json files on the trade site... In fact I can't seem to find anything that contains the data used in the search bar - maybe encoded somewhere?

velvet fog
fickle yew
velvet fog
#

it stored in localstorage

worthy cape
#

Maybe it ends up in local storage and cached for a whi..

#

What they said 🙂

fickle yew
#

It is.. Edge just tricked me into believing that it wasn't..

velvet fog
fickle yew
#

Yeah it is under local storage. But I saw the 0 B stored and thought, eh maybe not.

fickle yew
devout dust
#

Why have I NEVER EVER encountered this rate limiting situation in the developer docs ?
And why do I almost systematically get an HTTP 520 error from Cloudflare instead after a few requests (with 8secs+ between each of them) ?
I'm using the correct user agent, and well I wish I could respect rate limits but I also NEVER get the HTTP 429 with the request and wait data.

formal kraken
devout dust
#

thanks

devout dust
#

I am indeed receiving rate limit headers :
X-Rate-Limit-Ip = 2:1:60
According to the docs, it means that I can only send 2 requests for a period of 1 second, and if I break the rule I will have to wait 60 seconds.

#

If I can send 2 requests per second, why do I keep getting HTTP 520 errors while sending requests every 8 seconds ?

worthy cape
#

I honestly have not heard of anyone but you running into those errors (which seem to be CF related). 2:1:60 is indeed the traditional rate limit.

#

Without a CF ray ID, not even GGG can tell you what's up with your application from the CF WAF side.

#

Maybe you're running on a generally naughty hosting provider, maybe you're on a home IP range of vague reputation, maybe you're holding it wrong.

devout dust
# worthy cape Maybe you're running on a generally naughty hosting provider, maybe you're on a ...

Thank you for your response sir.
I have indeed not seen anybody encountering those errors, which makes me think I am doing something differently than most people, I wish I knew what exactly 🥹
As my program is currency in work in progress, I am indeed using my personal PC and home IP address, which might be unusual to contact the API directly.
I have access to the CF ray included in the error messages I get. Am I supposed to contact GGG and provide the ray id to request assistance ?

worthy cape
#

Reading up on CF in general online, the vendor (here GGG) can use it to see what rule fired to block you and could use that to tell you more about what may be going wrong.

devout dust
worthy cape
#

If you have a server anywhere, it might be worth trying there too.

zenith zodiac
plucky leaf
#

anyone know how to access poestack's api for the economy tab

velvet fog
#

poestack's author in tft discord

ripe storm
#

Is there any POB competitor by the way, or a web version?

worthy cape
#

Most build evaluation tends to use headless PoB under the sheets or interpret the XML of build codes.
Building something like PoB from scratch again would be an immense undertaking and even the investigations into how a sequel would look are quite sprawling.

waxen musk
#

how do i save item stats otherwise? hash32?

worthy cape
#

Was that one of those that changed semantically too, resulting in off-by-ones as one was total count and the other added count?

waxen musk
#

uh doubt it, wouldnt that break every existing item otherwise?

#

if they change semantics of a stat they add a new quantifier usually

#

like those multiply_by_60

worthy cape
#

PoB has something along those lines with the 3.23 gems, didn't pay too much attention to how and why.

waxen musk
#

there has to be some way to identify stats that never changes, otherwise they would have to patch the entire account DB every time. idk if hash32 column cuts it though

primal schooner
#

is there an updated Betrayal tool ?

brisk elkBOT
#
You can't do that

This server's settings prevent you from seeing other members' stats.
You may only run this to view your own.

golden knot
worthy cape
# waxen musk there has to be some way to identify stats that never changes, otherwise they wo...

Looking at the hashes, with uncertainty on IsVirtual for 3.21.1 as the schema has changed:

version,row_id,id,hash,virtual
3.21.1,174,base_number_of_additional_arrows,2742883088,false?
3.22.2b,174,base_number_of_additional_arrows,2742883088,false
3.23.0c,19037,base_number_of_arrows,3676405756,false
3.21.1,298,number_of_additional_arrows,1574944052,true?
3.22.2b,298,number_of_additional_arrows,1574944052,true
3.23.0c,174,number_of_additional_arrows,1574944052,false

Edit: added row-IDs

waxen musk
#

I'm guessing numeric row ID is an even worse idea

worthy cape
#

I didn't even note down any of the row IDs in the stats table, as tables generally are unstable over time.

#

Not sure if the numeric row ID is ever guaranteed to be stable over time; as long as a set of DAT64 files are internally consistent it ought to be an implementation detail.

#

My interpretation here is that the base_number_of_arrows stat was obsoleted and a new base_number_of_additional_arrows was created.
As long as they can atomically migrate any items and mods that reference the stat as that point, which a league launch maintenance allows them to do, it's consistent on their end.
I'm not familiar with where those stats were used, but if it was only or predominantly on skill gems, doing that kind of change as the gems were all migrated as part of the transfiguration rework makes sense.

#

Less fun for any external consumer that doesn't have that kind of migration in place, of course 😄

#

Added row IDs to my tally there - I can now see why you thought that base_number_of_additional_arrows changed into number_of_additional_arrows as it took over the row ID.

golden knot
#

row numbers definitely change league to league. Those have never been safe to rely on for identification. I've noticed some thematic grouping that happens by rows so I'd guess when GGG adds new things that fit an exiting theme, they drop them in next to the old stuff.

swift beacon
#

Happy New Year everybody! I look forward to spending hours poring over the format of .ggp2 files and all the new formats and changes with you all.

shell gyro
#

if any devs looking for an easy and very helpful tool to make, it would be great to have a "What gems to level" helper tool; a categorized grid of gems that you want to be leveling in empty sockets (only ones that gain 10-20% power per level, and exclude or separate ones that only gain like 1% or 0%; or just sort them by avg gain or w/e)

im playing ssf ruthless and its tough trying to decide what gems to mule/spend uncarved stones on before i start farming blood aqueducts, especially since my build isnt very well defined yet. It'd be made SO much easier with a spreadsheet or w/e of relevant gems grouped & categorized by Warcries / Hex / Mark / Fire Spell / Guard / Bow Attack / Claw Attack / Defensive Utility / Auras / Misc / etc. etc...and supports as well I suppose for non-ruthless SSF players, and maybe even add market values for trade players if you want to take it that far

right now im just mousing over literally every gem from Siosa trying to figure out if im missing any important utility gems or w/e and i cant even see how well they scale from there, so i have to manually wiki every one and look at the numbers to figure out whats important to get now before i start farming vs what i dont need to worry about level wise and can get later

frank parcel
rigid lantern
#

Yo, does anyone know of a place I could get data on divination card rewards in a machine readable format.

A .csv or .json or whatever format really of cards and the items they produce when redeemed.

long sky
vagrant bolt
#

@civic crane
Hi, I need some help about the awakened poe trade. I try anything already but still Failed to load leagues
This is what I try to do,
windowed fullscreen
retry after the browser
update to 10003
retry in the setting
change DNS to 1.1.1.1 and 1.0.0.1

civic crane
#

i can't help with network issues

vagrant bolt
#

I can log in to the trade site on Chrome but the app. shows my IP is blocked. But my website is not blocked. I feel confused.

plucky leaf
#

can anyone help me on how to get prices for certain items with stat filters through the poe trade site api

worthy cape
#

The easiest way to tell how a request looks is to craft a request interactively and look at what the browser sends.

dry dew
#

Any way to shift this window to the right or do I need to increase my poe window size. Just switched computers and I've not seen seen this be that big a problem till my new one

worthy cape
#

It seems to honor your DPI scaling factor, which typically is the correct play to have something readable. You could lower it in the OS to have a more pleasant experience, or run APT with --no-overlay to instead run the UI in a web browser where you have more control.

dry dew
#

I guess I have to increase my resolution then, I only have a single screen so putting in the browser is not going to make things better

minor palm
#

Any data hoarders have ancient ggpk files handy?

I'm looking for .json exports of Tags.dat from:

  • after v1.0.4, 2013/12/23;
  • after v1.2.4, 2014/10/23; and
  • after v2.3.0, 2016/06/03,
    assuming Tags.dat even existed in the client files back then. (I know it existed around v2.6 Legacy, not sure about earlier.)
    Exact versions/dates are not important.
worthy cape
#

Well, I can get you the actual DAT file, got no tooling for old schemas nor JSON conversion.

minor palm
# worthy cape Pick any build: <https://inya.zao.se/poe-meta/builds/public>

Beautiful hoard.

These 3:

"162304":{"build_id":162304,"time_updated":"","version":"1.0.4","manifests":{"238961":{"gid":"6924452030450007330","size":null,"download":null}}}
"422328":{"build_id":422328,"time_updated":"","version":"1.2.4","manifests":{"238961":{"gid":"2571175333856888968","size":null,"download":null}}}
"1163222":{"build_id":1163222,"time_updated":"1464988732","version":"2.3.0","manifests":{"238961":{"gid":"7192380407270618685","size":null,"download":null}}}

Well, I can get you the actual DAT file, got no tooling for old schemas nor JSON conversion.
Totally fine, thanks!

minor palm
#

You're such a blessing, zao. Thanks for helping everyone so often.

worthy cape
#

I finally got this infrastructure up and running fully again just the other day, happy that it is of use.

rapid pagoda
carmine scaffold
#

So in order to start my game today i had to remove content.ggpk and redownload the patch

oak estuary
carmine scaffold
#

i did not know that was an option.

#

ive never got that error till the patch recent

carmine scaffold
worthy cape
# carmine scaffold so it still says the same thing

The documentation on the forum notes that one should run the PackCheck.exe tool as Administrator, this is because the game may be installed into a privileged location (Program Files) that your user normally may not have direct rights to write into.
As for what might be affecting your game adversely, that's not a tooldev question and something that you can only engage with GGG about - but it might help looking into if some antivirus or other security software or third party tools is tripping it up.

carmine scaffold
#

All I did was delete the .gggpk and re-download the game works now. Something happened after the patch. But I'm good now

daring moss
#

Have there been attempts to "SaaS" headless POB before? I was thinking of using something like https://redbean.dev/ to wrap POB and expose its headless "client" via HTTP or whatever so its easier to interact with the whole thing (not with the intention that people'd host it publicly on the internet but to use it as a "drop-in" option for their automated POB needs when trying to make projects in whatever language they prefer)

violet hearth
formal kraken
violet hearth
#

Indeed

hexed cedar
#

Is there constant rubberbanding sopmetimes?

hexed mesa
#

this channel isnt intended for problems with the game

hexed cedar
#

what channel is

craggy beacon
proper rock
#

Hi all

#

I'm encountering an issue with Path of Building

#

wondering if there's a way to fix this

#

It's fine when I load it from a fresh install, but it screws up the second i'll close it and reopen, or reboot my pc

#

F5 doesn't do anything, Enter/Escape leaves the window blank but unresponsive.

oak estuary
#

That's certainly odd...have you tried downloading the portable version and making sure that works? It's like Common.lua is unreadable in your install directory or something

frank drift
#

wouldn't be the first time someone managed to do that

proper rock
#

I figured out the issue

#

apparently, i have a problem with forgetting where I installed each instance... turns out I had 3 different locations/instances installed

#

when it was looking to clean up any "left overs" from the update process, IE: sanitiseText function, the call was apparently going to the wrong install.

#

manually combed through my hard drive for each install and uninstalled them all, now there's just one instance and it's running flawlessly.

frank drift
#

ah yeah, the default install path was moved 3 or 4 years ago

fervent gorge
#

Hi guys, I'm currently having issues with awakened trade:
When the overlay is open, my ingame fps says it's still 90+, but I'm barely getting 10fps in reality.

#

if I close the overlay, it goes back to normal

worthy cape
#

@fervent gorge The technology used to draw the overlay on top of the game makes Windows present the frames in a different manner that tends to lead to more stutter and worse feeling. It's common to several types of tools like both APT and the TFT Blacklist tool.
You can see it in effect if you run something like PresentMon and look for what method the game presents with.
The only workaround I have for it personally is to run APT with --no-overlay which makes it open in a web browser instead, which then doesn't interfere with the game rendering.

GitHub

Capture and analyze the high-level performance characteristics of graphics applications on Windows. - GitHub - GameTechDev/PresentMon: Capture and analyze the high-level performance characteristics...

#

Hardware: Independent Flip is good, Composed: Flip is not.

#

In essence, if Windows detects that there's nothing on top of the game and it's sufficiently full-screen:y, the game can skip past a lot of the desktop compositor and present more directly to the display.
If not, it falls back into putting the frames into the DWM machinery which can lead to all sorts of delays and timing trouble.

fervent gorge
# worthy cape

I have managed to accidently "fix" this in the past, but every now and again, a poe client update bricks it again 😦

fervent gorge
# worthy cape

Oh I think i've managed to fix - just toggled through fullscreen, windowed, then back to borderless and somehow it's reset. Still not sure i understand how/why, and why the in game fps display shows 100+fps, when you're getting 10, but at least it's fixed for now 🙂

hazy fiber
#

becouse the game itself is rendering 100+ fps, but that doesnt mean your display is getting them

worthy cape
#

could be wonkiness around vsync or other presentation for all I know, probably not in tool land anymore.

meager bear
#

hello
I use bun_extract_file, and though it can see the file structure, it extracts all files as 0 byte
what could be the issue?

worthy cape
meager bear
#

I downloaded the bunx64release from your site with the biggest hex number, namely gff1fba7, steam files, and it says this

worthy cape
#

And yeah, the g* files are named after the commit hash, which is not ordered.

meager bear
#

thanks a lot, the latest one works great
thanks for your work too

worthy cape
plucky leaf
#

anyone know the rate limit for the poe trade site api?

formal kraken
oak estuary
plucky leaf
frank drift
#

yes, the interval specified in the headers...

plucky leaf
formal kraken
#

once a year should be fine :p

civic crane
#

from current limits it's 1req in 5sec, this is how a dumb but "safe" api poller would operate ))

worthy cape
#

Note that if you've got multiple applications on the same internet host accessing the same endpoint policy, you cannot rely on static governing but have to interpret headers and handle the occasional 429.

#

Like someone using both APT and the trade site at the same time will hit the same endpoints.

plucky leaf
vital locust
#

does there happen to be any GMs or Support agents for the game in here?

worthy cape
#

Nope. Use the support email.

vital locust
#

They wont answer me and have banned my account because my players name was CopKiller

worthy cape
#

That's unfortunate for you, and they will eventually get back to you.

vital locust
#

I didnt know i was breaking any rules

worthy cape
#

Sounds from the GGG-tracker that there might be quite the load on support these days, but I'm sure they've got a good process for dealing with things even if it takes time.

#

From the 8th on the forum:

I apologise for the delay in reply. We are currently working through a large backlog of Support requests, however, please rest assured that we have Support staff working around the clock to respond to everyone as soon as we are able to.

#

In any way, this channel is for third party tool development, but there's no GGG presence of that kind anywhere on Discord.

devout dust
velvet fog
gilded tree
meager bear
#

Hello again
We are having some problems with calculating trigger rates atm
Pob doesn't support unveiled 4s trigger, though it somewhat supports crafted 8s trigger
But then the trigger inherits the CD rate bonuses from the triggered skill somehow?
I checked the issue tracker, and there is some longstanding issue with dozens of commits, so I don't know if I should make a new one

zenith zodiac
#

l think it's normal for cooldown reduction to affect trigger rate. triggers don't have cooldowns, only the skills linked to triggers do. that screenshot looks correct to me, for an 8s trigger craft. have you tested it in-game?

late token
zinc kayak
#

hello everyone
im trying to find map mod data translated into korean, do u guys know where can i get that? I find RePoE but there is only english

worthy cape
#

The text should be in the same places in the stat description files, so if you're able to run RePoE you might be able to make it look at a different language.

#

Not sure if the language takes effect in PyPoE or RePoE - a bit trickier if it's the former.

zinc kayak
worthy cape
#

@zinc kayak Very readable, this 😄

#
// [zao@wiki-linux RePoE]$ cat RePoE/data/stat_translations.json | jq -c .[0].Korean
[{"condition":[{"min":100}],"format":["ignore"],"index_handlers":[[]],"reminder_text":null,"string":"받는 물리 피해가 에너지 보호막에 막히지 않음"},{"condition":[{"max":99}],"format":["#"],"index_handlers":[[]],"reminder_text":null,"string":"받는 물리 피해의 {0}%가 에너지 보호막에 막히지 않음"}]
formal kraken
#

Is there a writeup how the proxy/cluster jewel nodes work on the tree?

velvet fog
#

Wires77 implelemt the pob part

#

passive skill trees use extended hashes to store cluster jewel information, but pob have different values.

zinc kayak
carmine merlin
raven moon
#

Hi, what would be the best way of getting all the pinnacle boss skill information? I guessing poedb but I'm not sure how to make sense of the information on there.

e.g. if I want the exact DoT number of the ground degen in the regular uber elder fight, or shaper slam in the uber uber elder fight?
It seems like the numbers on poedb needs to multiplied by a factor, maybe the "Damage %" stat, but even then the results don't seem to match the preset values for boss attacks in PoB.

Any advice would greatly be appreciated.

carmine merlin
#

We can't be sure that the numbers in PoB are correct but extracting them is similar to extracting numbers for minions/ spectres

raven moon
hazy fiber
#

theres 2 ways PoB does it and a third it could use
you could calculate it like a normal skill, but you would need to find all the appropriate multipliers applied to it by the boss etc, it really should be done like this but that requires a fair amount of extra work

the 2 ways PoB uses are either taking the BaseResolvedValues which are pre calculated values in the ggpk for a skill at a given enemy level (where these work) which is then multiplied by as many boss multipliers that we know of for that boss

or if those numbers are useless (eg maven only has level 1 numbers iirc) we use hardcoded values to match up with poeDBs numbers (and then only add the multipliers we know poeDB is missing)

#

so

A best guess on some incomplete numbers
either best guess using ggpk precalculated values, or best guess using poeDB numbers (adding in missing multipliers where appropriate)

#

but you should be able to calculate them like any other skill

#

if you know where and what multipliers to apply

raven moon
# hazy fiber if you know where and what multipliers to apply

Thanks for the info!
I'll have a look at how pob does it. The fact that each boss/ability potentially has some unique method of calculation is quite challenging.
I was hoping to find a way to see how a build's defences would fare against all the pinnacle boss abilities and present the results in a nice way. But it seems like just getting the boss damage info is already a big task

hazy fiber
#

if you find any issues/improvements for how PoB does it, it would be appreciated to contribute,

the current method exports a multiplier to be applied to the base monster damage, this is sorta incorrect (itll be fine as long as the enemy levels are correct for the base and uber variants but might be off for quest versions eg of eater/exarch) but was the best way to implement it at the time without reworking lots of other code in PoB, but now that its grown in scope theres definitely better ways to do it

#

and also technically there shouldnt be an issue to add as many enemy skills as you want as it is searchable, but I doubt many people know that all dropdowns in PoB are searchable so we have tried to keep it limited to the most requested skills that people want to tank

raven moon
#

I'll definitely contribute if I find something usefull!

You said that you use a combination of the ggpk data and poedb. I always assumed poedb was also based on the ggpk data. Does poedb have some information that isn't available in the ggpk?

hazy fiber
#

no they just calculate the skills properly

#

the numbers they show are mostly the skills data and doesnt include all the multipliers on the boss

#

it does warn you of that though

The following values are skill base values and do not include map affix bonuses, monster buff bonuses, altar bonuses, atlas skill bonuses, monster base damage(ex: The Maven 150% multiplier), monster rarity bonuses (ex: unique 70% more, unique attack 33% less).

#

I might endup reworking them soon to calculate properly PoB side just for completeness and incase they change but currently the error compared to poeDB numbers are < 0.2% so 🤷‍♂️

raven moon
slim pilot
#

Does anyone knows if Python fork of PoB still alive?

#

I want to check for long long inactive PR's but dunno if they will ever get merged

meager bear
pallid wraith
# meager bear what do you even mean by "triggers do not have cooldowns"?

For example, if we take the weapon mod: trigger a socketed spell when you use a skill, with an 8 second cooldown. What gets a cooldown here is the skill, not the modifier on the weapon. If I socket 3 skills, they will each have an independent 8 second cooldown, allowing me to use all 3 every 8 seconds, rather than getting them out over 24 seconds.

meager bear
#

huh, I got it, thanks

#

I thought of it wrong

somber yarrow
formal kraken
simple ravine
#

/me arises from the dead

worthy cape
#

The bundle spec could use some friends in the GH wiki 😉

simple ravine
#

How about GGG just helps us with that 😄

echo zodiac
#

@civic crane weird part is I am actually getting a reply from server

#

did they change the response format overnight or something ?

civic crane
#

this Browser and how leagues are actually loaded are not exactly same. i've never seen captcha myself, and can't claim that my bypass method works. also we just recently discovered that ipv6 can be the issue too @echo zodiac (this is also not a support channel)

echo zodiac
#

and the text I am showing here is what is shown to me in game when I do Ctrl + D and go to browser

#

so it is actually Awakened POE Browser thing ? Not %100 sure what is the interface created with

#

I never switched to anything such as ipv6 and have been using it for this league

#

started having this problem just today

#

I also tried changing my default browser from firefox to chrome, didnt help

#

is there at least a way to retrieve the trade link for the specific item internally from the software so I can at least paste it into an external browser ?

#

do I need to modify the code and build it myself for that ?

mint karma
#

Is there a list anywhere of all the mods rare monsters can have?

As in these mods (like "Life Regen"):

earnest bear
#

Hey!
I've lately had some issues with Awakened POE trade
The overlay is no longer working when someone whispers to buy items, or if I whisper to buy an item.

If someone whispers me I can still see the red outliner around the item that the player want, but not the bar that used to to show thank player etc etc

Anyone that's had the same?

oak estuary
#

I don't think that's awakened poe trade providing those features

earnest bear
#

Damn, am I thinking of another tool, hmm

oak estuary
#

Poe overlay, perhaps

#

Poe trades companion is the other one I'm familiar with

earnest bear
#

Yeah was Poe Overlay, didn't realise / forgot I had installed it through Overwolf at some point, and I disabled the autostart for Overwolf - Cheers mate

trail cradle
frank drift
#

although it forked from the Overwolf version a long time ago, so it has pretty different features

#

it's what I use though, good app

glossy oracle
#

I'm working on writing a tool that will dump all public stash data to a database. I have this mostly working, but would love to be able to backfill data for all of Affliction league, if possible.

Would anyone happen to have a next_change_id for the PC realm from just before Affliction stash tab data began to appear?

compact isle
#

2173391281-2164838460-2095463865-2325811203-2258598178

glossy oracle
#

This will be a big help! Thank you so much! 🙂

#

Also, just to confirm, I don't see any timestamps included in the data I'm getting back from the stash tab API. Is the only way to get times associated with stash tab changes to be constantly scraping live data and associating request/response times with the data?

Using this next_change_id should let me scrape tab data for the entirety of the league, but I won't be able to tell which changes occur on day 1 vs day 10 of the league unless I were to somehow get that data from someone else, right?

compact isle
#

there are no timestamps you're correct, the only time you have available is the time that you fetched the information

glossy oracle
#

Alright, thanks for the confirmation. That's going to introduce some challenges. 🙂

#

I'd love to be able to simultaneously start scraping live data (with timestamps) right away and then start backfilling historical data from this next_change_id in parallel whenever I can spare the requests (within the rate limit), but without timestamps I'm not sure I'd have any way to approximate % completion on the backfill.

It also won't be completely trivial to tell once the backfill has caught up since I'm not sure if I'll necessarily end up seeing next_change_id collisions if its possible I'll end up on a different offset from you. I can check for equivalent stash tab changes already entered in the database, but even then it is possible for someone to make an identical (especially if empty) stash tab with the same name go public on different days. So I suppose I'll have to watch for a sufficiently long sequence of identical results from the API.

#

Oh, I just noticed your GGG badge! Perhaps you could confirm my suspicion regarding next_change_id collisions. Are all responses from the stash tab API consistently batched in to the same next_change_ids, such that I can start requesting live data as well as backfilling and eventually the backfill will reach next_change_ids that I've already scraped live?

Or is the batching done dynamically, so that requests from your next_change_id might give me changes 1-100 in the first response, 101-200 in the second response, etc. But my live requests might give me changes 1056-1155 in the first response, 1156-1255 in the second response, and so on, and so the next_change_ids might never collide since they have different offsets?

compact isle
#

the change ids change as the stashes themselves are updated so it's unlikely you'll always get the same ones. You could try and do some change id comparisons instead (each is made up of 5 shards so X-Y-Z-A-B increment independently)... but that's not really encouraged since it may not always be the case. Essentially what you're doing isn't the intended use case of the API

glossy oracle
# compact isle the change ids change as the stashes themselves are updated so it's unlikely you...

Even if it isn't a part of the API contract I can rely on going forward, that's very helpful to know for one-off backfills and such like this.

Am I understanding correctly that stash tab data is divided between 5 shards (lets say A, B, C, D, and E), and the change ID returned from the API is made up of the next change ID for each shard. Each shard's change ID increments each time a change is made to a stash tab within that shard.

So for change IDs A: 100-80-60-140-10 and B: 110-85-70-140-15, I can be certain that change ID A occurred before change ID B, and that difference spans:

  • 10 changes in shard A
  • 5 changes in shard B
  • 10 changes in shard C
  • 0 changes in shard D
  • 5 changes in shard E

Presumably not all of these changes would be presented at the public stash tab API (e.g. changes made to private tabs, or to data not presented by the API), so the difference between the two change IDs above may not be exactly 30 change results at the API, but perhaps at most 30 results?

Am I understanding this correctly? 🙂

#

With the caveat that all of this is implementation details subject to change at any time, of course?

daring moss
#

@ any POB devs around: I'm aware this isn't exactly something you'd be running into every day and that I may as well be completely on my own with this but I've tried using POB's headless wrapper in a regular Lua 5.1 environment and I am getting an error on line 175 of the HeadlessWrapper. It seems like POB "attempt[s] to yield across [the] C-call boundary".

Does POB require a special version of Lua, maybe LuaJIT, luvit, or similar?

daring moss
#

Specifically what I did was install Lua 5.1 on WSL/Ubuntu, download the POB source, made stuff from runtime/lua accessible, and then tried to run HeadlessWrapper.lua but it would throw that error about cross-boundary yielding when attempting to process the first frame with that callback.

grave wren
#

Iirc you need luajit for POB but if anyone knows more please correct me

oak estuary
#

You do need luajit. PoB runs on 2.0

daring moss
#

Hrm, I see. Tried it with LuaJIT too and I'm still getting the same issue which is confusing me slightly. Will investigate further

oak estuary
#

Rasmus uses the headless wrapper a lot, but you're right in that we only use it for testing

daring moss
#

Okay I did get it to work, it does seem to be related to the JIT somehow. The way I invoked it was the problem

#

Do you happen to have some "raw" build XML for testing lying around that has some build data pre-populated? Otherwise I'll try to piece together the build codes are compressed

grave wren
daring moss
#

Awesome, thank you

grave wren
daring moss
#

That is a lot of data in the build table, wew

grave wren
#

i basically just mass tossed build onto my bot to see if any issues arrive and shit doesnt break 😄

#

so yep lots of stuff in some builds

lyric umbra
#

is there any kind of API that displays the parties from the noticeboard?

grave wren
lyric umbra
#

i guess that would be a feature request. it would tie in nicely with services and spring some life into them

#

as it stands barely anyone is using the noticeboards

frank drift
#

developing and especially maintaining APIs costs a lot

#

there has to be a benefit to justify it, and there's no benefit there

tepid pawn
fickle yew
tepid pawn
#

Thanks :), ping me if you need any other info or something.

compact wigeon
#

I may have missed it in the developer docs, but does anyone know if it's possible to detect voidstones?

compact wigeon
#

In the API somewhere. We can fetch atlas_passives hashes through LeagueAccount, but I'd like to be able to detect if a given player has voidstones equipped, the number, and hopefully which specific ones.

fickle yew
tepid pawn
#

Nice, thanks. Is this an issue that will happen any time someone does a name change?

fickle yew
tepid pawn
#

Ahhh makes sense

#

I'm pretty sure I'm on delve ladder though for entire league hmm

fickle yew
#

Hm, I didn't look at that one. Let me take another look.

fickle yew
tepid pawn
#

1074

fickle yew
# tepid pawn 1074

Ah you're right. I found an additional case where the name change wouldn't apply. Fixed that as well, so other people shouldn't run into that.

tepid pawn
#

Nice

fickle yew
#

Thanks for reporting the issue 🙂

daring moss
#

Is anyone else having problems with PoB since ~a few days ago? Whenever I open it the application closes after loading. I tried reinstalling completely which works for a moment, then it checks for updates and closes. No errors shown

frank drift
#

no issues personally

daring moss
#

Yup, I made sure. Nothing changed about the installation for the past months

oak estuary
#

Have you tried running the portable version?

You can also enable logging, which might give a little more insight. Find your SimpleGraphic.cfg file and make sure it has set con_log "1". Should see log output in that same folder as a SimpleGraphic.log file

hazy fiber
#

just run as admin and see if that fixes it, if it doesnt have permission to download to a location and it tries to itll crash

narrow orbit
#

debug logs show : [10:37:26 PM] error [cors-proxy] connect ETIMEDOUT 64:ff9b::6813:ba10:443 (www.pathofexile.com)

#

i've also checked proxy settings, bound my dns to a neutral server like cloudflare, google, etc. no change.

#

iiinteresting i fixed it. disabled ipv6...

compact wigeon
narrow orbit
frank drift
#

APT has been having issues with ipv6 for awhile

narrow orbit
#

ahh

frank drift
#

at least for some people

narrow orbit
#

yeah i checked, all the ipv6 settings in windows are bound to advertisements from my gateway, which is working fine everywhere else

#

and ipv6 is working elsewhere on the machine. maybe it's a problem with pathofexile.com ipv6 endpoints, though that seems unlikely as its backed by cloudflare

#

i did notice that the poe client was having trouble fetching updates, but i was able to log in. that's what made me think ipv6 (plus the error msg)

worthy cape
#

A thing to note on browsers is that they tend to do happy-eyeballs for many kinds of requests where they try both stacks to see what finishes first.

#

That v6 address looks a bit odd, is the first part of it truncated?

gilded tree
worthy cape
#

Aye.

gilded tree
#

That's, afaik, nat64 (https://en.wikipedia.org/wiki/NAT64)

NAT64 is an IPv6 transition mechanism that facilitates communication between IPv6 and IPv4 hosts by using a form of network address translation (NAT). The NAT64 gateway is a translator between IPv4 and IPv6 protocols, for which function it needs at least one IPv4 address and an IPv6 network segment comprising a 32-bit address space. The "well-k...

worthy cape
#

I see, it wasn't in the table of address flavours I usually consult.

#

The more you know 😄

PS C:\Users\Lars> curl -v https://[64:ff9b::104.19.186.16]
*   Trying [64:ff9b::6813:ba10]:443...
* connect to 64:ff9b::6813:ba10 port 443 failed: Timed out
craggy dagger
#

Maybe this is just screaming into the void, but I'd love to have more tools developed that also supported those of us who play on consoles. Prices are drastically differnet for example. So although it's great to be able to load stashes with wealthyexile or suchlike, the price/value can sometimes be wildly off, and ofc the trading stuff won't work either. We can't use programs such as Awakened POE, so it would be nice if the prices were correct. Anyway, support for console players too would be awesome 🙂

daring moss
#

Hrm, there is no SimpleGraphic.cfg anywhere

#

Fresh portable is broken too

#

Okay, made the cfg file manually and the log doesn't really have much to say

Log opened.

--- Render Init ---
Pixel format: need 32,24,0, using 32,24,8
Creating context...
Loading WGL extensions...
using WGL_EXT_swap_control
GL_MAX_TEXTURE_SIZE: 16384
Loading OpenGL extensions...
using GL_EXT_texture_compression_s3tc
using GL_ARB_texture_non_power_of_two
Loading resources...
Renderer initialised in 228 msec.

Loading main script...
Loading passive tree data for version '3.23'...
Loading passive tree assets...
Processing tree...
#

Okay

#

I actually found the solution

#

My local installation of Lua took precedence over the one PoB ships with

#

so it tried to run with vanilla Lua

worthy cape
#

That's a classic.

daring moss
#

Is it that common? haha

worthy cape
#

It's happened a few times before, both that or LUA_PATH shenanigans.

oak estuary
#

Mm, we fixed that ages ago in general, but the updater still tried to look in the wrong spot. If you opt in to beta it should work, afaik

daring moss
#

I am in fact opted in for the beta thing according to my config haha

#

removing my Lua installation fixed it for now though

fleet grove
#

poedb and poe2db show 2 different countdown times
poedb's one is wrong
@velvet fog

clever bone
#

Good afternoon, I would like to ask a person who has a good understanding in software development. How technically difficult will it be to create a function, that will copy items from a game client running in a language other than English (via ctrl+c) to the Path of Building program?

daring moss
#

Er, that kinda depends on your experience/skillset? I don't know what PoD is but you can parse the item text you get from CTRL+C-ing it in any language and then "translate" it to any other if you have a list of all the mod texts and their translations

#

in terms of "technical difficulty" this really all comes down to experience? If you or whoever is trying to do this has never written a parser before then it'll be "hard". Of course general compsci experience is going to offset that

#

But it definitely is not a trivial problem to solve

clever bone
worthy cape
#

Path of Building interprets items only in English and only in the non-advanced item description format.

#

Copy-paste is only viable from the trade site (in English, probably) and from an English game client with Ctrl+C (not Ctrl+AdvancedKey+C).

#

PoB has a carefully curated set of string matching logic to match onto the basic text of the stats, reinterpreting it into its own internal representation.
There are several barriers to accepting non-English text in PoB.

#

Mod parsing would have to be changed in complicated ways to understand the advanced format; and the current string-matching logic would have to be completely abandoned or majorly reworked to parse the possibly-ambigious foreign text.
Very few of the developers speak the other languages, so it'll be a large maintenance burden whenever adding support for new items and mods.
There's also the technical problem that Path of Building currently doesn't do Unicode text.

#

On making a "translator" tool that adapts foreign text into English, one could envision doing something like taking the advanced mod description, matching it via "stat translation" text files to a particular stat and re-rendering it with the English text; but that is ultimately useless as PoB doesn't understand advanced mods.

daring moss
#

Couldn't you "translate" the non-advanced mods?

grave wren
#

yes but you need to be careful to translate "correctly" in a way POB can understand it

daring moss
#

Fair point

worthy cape
#

Every time I see the advanced mod discussion I understand the problem and five minutes later, I've forgotten all the details 😄

daring moss
#

I've never looked at them before

clever bone
worthy cape
#

The trade site has a Copy function built-in. Haven't looked at the stash view as that's not really intended for tool consumption.

daring moss
#

Stash view doesn't let you copy anything iirc

#

After looking at the differences between regular CTRL+C and advanced... couldn't you mainly skip lines starting with { and ignore numerical ranges in parenthesis?

worthy cape
#

It might be possible to hook something into the tooltip display logic.

daring moss
#

Ah yeah

#

Something with a browser addon

worthy cape
daring moss
#

Ah, I see

#

I guess the "best" way would be for PoB to one day "bite the bullet", parse advanced items, and implement mod merging internally for display purposes

worthy cape
#

Say that you've somehow got two freeze reduction mods at 60% and 70% on an item, the basic description would read "Cannot be frozen" while the advanced would show two distinct mods with "60%{50%-70%} chance to not be frozen" and "70%{50%-70%} chance to not be frozen".

#

(mods don't exist, but you get the gist)

daring moss
#

Oh, interesting. I didn't know the game would merge mods like that

worthy cape
#

More noticeable with stuff like flat life, where you get a sum for basic and separate mods (and thus stats) in Advanced.

#

Stat translations have distinct format strings for different conditions on the value fed in.

daring moss
#

Ye I knew about life mods being merged

#

the way you described it, it feels like a miracle that PoB has been working alright so far haha

worthy cape
#

Often you've got something like 100|# "Cannot be X", #|99 "{}% chance to avoid X".

clever bone
#

Thank you, now I understand the difficulty, and the difficulty of copying the description of the subject from the site. Unfortunately, or fortunately, I play on the ssf, so I will not be able to get a description through the trading platform.

worthy cape
#

And very commonly, #|-1 "{}% reduced X" negate 1, 1|# "{}% increased X".

daring moss
#

Obviously not exactly a solution, but especially for PoE I would suggest playing on the english client if at all possible

#

I'm a native german speaker and some of the translations for the german client are very... interesting. Extremely verbose gem names for one

worthy cape
#

(handwaving the examples as I don't have any translations handy)

worthy cape
daring moss
#

There's one thing about PoB that's caused me some trouble recently in regards to mod parsing actually

#

maybe it got fixed since a few weeks into this league though

#

There was a weird mismatch in the wording for umbilicus immortalis' "flasks apply to zombies and spectres" mod

worthy cape
#

There's also a larger usability problem with importing items from other languages; like which language do you keep the text in, especially when sharing the build through exports and websites?

#

It kind of ties into the larger concept of internationalization, which is a huge can of worms.

daring moss
#

optimally translate the mods into some language-independent internal representation and then present them in whatever the user wants

#

but i18n is indeed a huge can of worms

clever bone
#

Perhaps it would be a good solution to add to the core of the game the ability to copy the "native" description in English, regardless of the client's language. Of course, if I understand correctly the logic of creating such a description by the client.

clever bone
daring moss
#

the game and PoB are two entirely different things

#

not maintained by the same people

worthy cape
#

The game itself deals with "mods" that contribute to one or several "stats".
We have that data for a specific game version in data tables, but as items change over time, that's not necessarily enough to interpret the data from non-current releases.

#

PoE has the benefit of that all active item data in the database is always in sync with the current set of mods and stats; as they convert most legacy items when changing things.
PoB has no such luxury and in older build codes, there may be obsolete versions of items and stats.

#

This makes it harder to move to an explicit mod/stat + stat-translation system as it relies on being able to resolve those.

#

There's also the eternal problem that some copies (from trade site) are always basic, so for those imperfect mapping to mods+stats would need to be made.

oak estuary
daring moss
#

Fair enough, it didn't bother me enough to report it/I thought I was doing something wrong as a build I looked at had different (functional) wording on its umbilicus

#

so I assumed the problem somehow lay with me haha

oak estuary
#

I'd love to support advanced mod parsing in PoB, but it's a lot of effort for not a lot of gain, at least with how people are used to working with PoB. The largest benefit would be being able to change mod values and catalyze them on copied items like you currently can with crafted items.

#

Imported items still don't use the advanced copy text, so that's even less incentive to add support

lean phoenix
#

poe.ninja have no provided economy for Hadcore mode game ? Is there other source ??

teal epoch
lean phoenix
#

Thx, but I want for Hardcore only not challenge league....

#

And as I see is empty...

teal epoch
#

if i had to guess, the data doesnt exist cause nobody really trades in hardcore standard

lean phoenix
#

What ?! I played from 8 years and trade on HC but indeed there is no HC trade data on poe site too....
heh
https://www.pathofexile.com/trade/search/Hardcore/rRVruQ
They should make all economy trade all game mode, fully improve PoE 1 first and then develop POE2. I play only on HC

#

Ok, HC Affliction should be enough for me...

hazy fiber
#

HC and softcore cannot trade interchangeably becouse that would nullify the point of hardcore and almost everyone who plays hardcore (challenge leagues) would be against such a change

#

yes you lose a character if you die, but the items are what gives the character value

lean phoenix
#

I asked for this because I 'm making another filter personification portal and wanted make full economy for HC but as I see I will not develop this in full. Now is only Standard option with full arithmetic average from standard game modes....

worthy cape
#

You see the same thing for actual leagues for particular item classes or individual items that are flagged as low/no confidence on Ninja, or not indexed at all.

#

For "new" items, I would guess that there's not too much of a difference in Standard vs. Hardcore. Currency stays in the league even if you happen to RIP out, and anything legacy lingering in someone's stash isn't going to matter much for an item filter.

#

There might be a bit more re-crafting of items and levelling resources in HC to replace characters and items that RIP out.

swift trail
#

is it possible to bypass the rate limits of path of exile trade site by using proxies

#

im currently using python to request from the site

worthy cape
#

Regardless of whether it's possible, you shouldn't.

swift trail
worthy cape
#

Attempting to circumventing rate limiting policies is against their intent, which is to limit the rate at which a single human user of the internal API can interact with it.

#

It's not intended for bulk automation and the ToU prohibits the use of bots and other automation around the website.

#

It's a slightly "gray" area in which it's tolerated to make the occasional request initiated by a human to the website endpoints, like character fetches or APT/PoB-triggered trade searches.

#

@swift trail What's the actual problem you're trying to solve?

swift trail
#

but the rate limit currently is bottlenecking the process

worthy cape
#

Yeah, not much choice for that but to adhere to the rate limits to avoid triggering the largest timeouts.

hexed mesa
#

if all you care about is the prices of currencies you could just use poe.ninja api

daring moss
#

That sounds like the perfect use case for poe.ninja or the live stash API (if you are willing to put in the effort to properly track that info)

worthy cape
#

The upside of ninja info is that it's curated and less tainted by outliers.
The downside is that it's curated and may not be quite as sensitive to market movements than "raw" information; but the latter may be way too noisy from fixing to be of use.

swift trail
worthy cape
#

Requires a bit of set-up with registering an application and being able to pull and process the rather girthy stream of stash tabs, but it's the best source of bulk state.

hexed mesa
#

in that case parsing public stashes api is your best bet, but it still has delay (5 minutes)

daring moss
#

a 5 minute delay isn't all that bad compared to more infrequent updates on ninja though

narrow vortex
#

I'm about to ask what may be a dumb question, but can a script be created to make curser text copy to clipboard? Aka, if I move the curser with a controller, it copies that text to clipboard. I play totally blind, and this would make things like navigating the skill tree only a bit annoying as opposed to now where it's just a misery needing to OCR every possible node. I also can't use build planners because they aren't accessible with my screen reader, unfortunately. I've beaten the game; I just want to know if I can make it a bit easier on myself or if this isn't possible/allowed.

worthy cape
#

Tech-wise, the only built-in way to get text out of the game is Ctrl+C on items or selected text fields, with the optional highlight key for more item information.
There is also the client log file, which doesn't contain anything of the sort you seek.

#

Tooltips are not accessible, nor is any information about tree nodes.

narrow vortex
#

I figured. Ty.

worthy cape
#

On tools, yep, they're an accessibility and localization nightmare.

#

waves a small PoB flag

narrow vortex
#

I think my best bet is to just make a giant spreadsheet tbh lol.

formal kraken
#

@narrow vortex not sure if you use pobbin, anything I can do to improve accesibility?

narrow vortex
formal kraken
#

feel free to just complain about everything that doesn't work for you and I can go take a look

narrow vortex
#

I think the main problem I see is the fact the skill tree only previews. It doesn't show me the entire build. Just takes me to the build planner, but honestly idk if that's fixable. The graphics read though, so if it showed the entire tree I could probably use this to know what the necessary nodes were if not what direction they were in. I think that's the main problem with the tree itself. It's huge, and even if I go left with a controller it doesn't mean I'm moving left. It all depends on the direction of the nodes, and which way they branch after one is basically completed.

#

so it's like oh I have to use it every ten levels or so to make spending all the time on the tree worth it lol.

formal kraken
#

What screen reader are you using? I might be able to make the tree more readable, but yeah not sure if that is going to help because of node locations

narrow vortex
#

NVDA.

#

Honestly I'll take what I can get. Even if node locations aren't there, I can still have an idea of what the build is trying to do. There are so many nodes that knowing what they're doing in a build would at least give direction.

#

is there a way to export the skill tree into spreadsheet form? It wouldn't be pretty, but it's the only way I can see myself being able to see how nodes are laid out.

formal kraken
#

I can give each node a title (description?) and have the screen reader read it, should I only let it read out nodes which are enabled?

narrow vortex
#

probably? I'd have to see it, I think.

formal kraken
narrow vortex
#

I could probably do either, but I assumed coords would have been easier.

formal kraken
narrow vortex
#

My origenal plan was to use the cell coords of excel and where the game puts you at the start to kind of...center it? if possible.

#

yeah no rush. I appreciate it! 🙂

grave wren
narrow vortex
#

Honestly, while that would be nice, I'm probably a bit too casual for own pathing. A tool for level by level would be super helpful.

grave wren
narrow vortex
#

general location would be a huge help if possible. Right now I am literally using OCR to read every node which gets frustrating because of how moving up doesn't always move you up on the tree.

#

sorry my cat was yelling at me. Anyway general location like ne would also make it easier to kind of map between two nodes so I understand where I may have gone wrong when moving around.

grave wren
#

alright got it, can't promise but i'll try to cook something up (hopefully this week) 🙂

narrow vortex
#

I seriously appreciate anything that's attempted; success or no. No rush.

grave wren
#

One of the issues might be to find out where people went first on a fullblown tree if it splits 🤔

narrow vortex
#

yeah but honestly that feels... not as big just because of the fact I understand this probably won't be optimal building by me. Like even if I don't do it in the exact proper order, knowing what they did tells me what to focus on/ if I've missed any nodes I should have taken. At least if I'm understanding the process correctly.

grave wren
#

yep thought so. The general idea would be to read the client log to find out when you level up then tell you (unsure how yet) which direction your next passive would be so you'd be guided while playing to take nodes.

narrow vortex
#

Like earlier today I was looking for minion instability and I'm pretty sure I took unnecessary nodes on the way that I could've used somewhere else.

grave wren
#

oh that's a bit of a different use case then

narrow vortex
#

I think that still does exactly what I need it to. General direction lets me at least explore in the right spots and do my best to choose the best nodes. I think the issue that is difficult, if not impossible to solve without me being able to look at the tree in some way is just how nodes connect. It'd be easier if nodes and controller imputs didn't ignore one another sometimes, but idk.

#

actually that isn't fair. It's more that I don't understand which direction the node moves in.

grave wren
#

yep maybe both things would be good, first a thing to point you what to pick next from the current position and another function to check which general direction node with name X is?

narrow vortex
#

Yeah that'd be incredibly helpful.

grave wren
#

hm i've seen that the client log also has node allocations, 2024/01/27 15:40:07 2158125 fb7ab8a2 [INFO Client 17532] Successfully allocated passive skill id: totem_attack_notable2680, name: Panopticon

I've searched the tree json for 2680 but couldnt find the id, how would i match it to the tree node?

oak estuary
grave wren
#

alright, ty

formal kraken
#

@velvet fog I'm seeing a few requests to https://pobb.in/Heist_league/raw and https://pobb.in/Abyss_league/raw from poedb, feel free to ignore, but maybe that rings a bell for you and helps you fix a bug

somber heron
#

hello, I've been using Awakened for quite some time now but when I tried to boot it up today, nothing happened. then I did everything this page told me but to no avail : https://snosme.github.io/awakened-poe-trade/issues

I tried deleting the app (it does not show up on installed programs) by going to file location and deleting everything THEN downloading a fresh setup but the setup doesn't work too. my Windows Defender does not show any errors. what might be the problem?

worthy cape
#

(sorted the above problem over on TFT)

silver fog
grave wren
#

I'd check how poe.ninja does the linking or how pob does handle the legion jewel search

velvet fog
#

https://www.pathofexile.com/trade/search/Affliction?q={%22query%22:{%22name%22:%22The%20Trickster%27s%20Smile%22}}

#

you can get query by api https://www.pathofexile.com/api/trade/exchange/Affliction/eR7gv4IL

#

{"id":"eR7gv4IL","query":{"have":["divine"],"want":["deafening-essence-of-zeal"],"status":{"option":"online"}}} and put it on ?q=

silver fog
#

Sweet, thanks a lot!

radiant shoal
#

it looks great

silver fog
#

Thanks! It's a rather recent project, so I'm not surprised

radiant shoal
#

there's something else I was going to try and do, maybe we can do it together instead of duplicating?

#

I think it'd fit gains of exile

silver fog
#

Could try, why not

radiant shoal
rapid pagoda
silver fog
#

I got it working, in fact

Chuanhsing's answer got me exactly what I needed - people can click on essence pics and get to the store page. With code almost ready for bulk-search 🙂

rapid pagoda
compact isle
#

heh appreciated and sorry for the reverse ping 😄

frank drift
#

this one you have to @, though it's fun when you're typing an @ and accidentally end up autocomplete pinging someone

worthy cape
#

Some enthusiasts with customized clients have keyword pings too, but that's self-inflicted 😄

hexed mesa
#

there are actually silent pings built into discord if you put @silent at the start of the message @hexed mesa

tender burrow
#

Not sure if the right spot to ask, Lutbot used to show flask duration as a color bar when i first got it, but it no longer does so, even after re-installing, what is wrong?

frank drift
#

not familiar with lutbot, did you check the settings?

#

I use MercuryTrade Fork for that kind of thing, if you need an alternative

golden knot
#

There's no way to tell the age of a player account via the API, right?

worthy cape
#

I've seen it asked before, there's no current API field for it.

#

Got any fun use case for it?

golden knot
#

Thinking it would be nice to enable "new player" features/tutorials in an app

hexed mesa
#

probably the best you could do is query characters and base being new player on something like "never hit level 70" or something

glass stone
#
Reddit

Explore this post and more from the PathOfExileBuilds community

Trauma is a stackable buff that increases the damage dealt by BoneshatterBoneshatterAttack, Melee, Strike, AoE, Duration, PhysicalLevel: (1-20)Cost: 5 ManaAttack Speed: 85% of baseAttack Damage: (200-250)% of baseEffectiveness of Added Damage: (200-250)%Requires Level 28Attack enemies with a forceful melee strike that also hurts you. Successive ...

hazy fiber
#

it used to work, might have gotten broken by a recent PoB change, best place to make an issue would be the github not a post on reddit

#

ahh yeah it was probs the dot taken as PR that broke it, that self damage hits doesnt use the hit taken as, only generic taken as

glass stone
hazy fiber
#

ahh I must have missed it, Ill fix it this week if somone else doesnt, sorry for the slow reponse

glass stone
#

i just on configuration enemy stats on enemy physical damage write self damage from trauma and check on calcs hit taken for self damage calculation but most people have a problem for build optimization.

hazy fiber
#

yeah its my fault, I havnt been checking issues much the last few months and must just have missed it

#

it should be an easy fix

glass stone
#

but the biggest issu efor my is on we dont have untiring regen calculation. i must manual calculate this

hazy fiber
#

that PR doesnt implement it from self damage though, but Ill see if I can add that as well once that PR is merged

glass stone
hazy fiber
#

yup not merged (yet), will hopefully be added at some point

glass stone
grave wren
silver fog
#

Hey folks,

A bit of self-promotion: just pushed one of the last major updates to https://gains-of-exile.vercel.app/, a site to compute optimal harvest-conversions. Now with PoeNinja prices, cleaner UI, links to trade site (multi-item queries), quality of life features (many many tooltips). https://www.reddit.com/r/pathofexile/comments/1ar0elf/gains_of_exile_no_longer_a_site_for_ants/

As far as I see, the final touches left are PoeStack prices, and other leagues. But otherwise I will be developing reactively - based on the feedback from the community.

So if anyone's ever wants to flip some essences - in this league or the next, feel free to drop by

umbral ermine
#

Hello everyone! Is there any way to see account ID without access to API? Also, can it be changed via unlinking account from steam (or in some other way)

daring moss
#

The account name you e.g. type into PoB to list your characters?

formal kraken
daring moss
#

Ah, okay, makes sense. I assume this won't be accessible without the API then and will not change by unlinking steam or through any other method

worthy cape
#

There used to be an old endpoint that let you resolve arbitrary character names into account names, that has been gone for a good while now due to privacy reasons.

#

@umbral ermine It might help us guide you if you'd explain a bit what you're building and what you need it for.

golden knot
#

Is there an official way to find out what the live patch version for each platform (pc/ps/xbox) is?

#

(from an app's code, not just me as a human knowing that info)

worthy cape
#

(the fourth digit group in the patch version is the letter in the human readable form, with a fifth for hotfixes IIRC)

golden knot
#

haha, yeah I want to know console versions too

#

are the console patch servers inaccessible?

worthy cape
#

They're assumedly on MS/Sony infrastructure, while PC stuff interrogates the Standalone patch server and Steam.

#

There might be some sort of platform API for those vendors out there to tell things about their catalogue.

golden knot
#

good thought!

worthy cape
#

Least horrible thing otherwise: patch notes forum titles or maybe loot filter validation, if you could manipulate one of those programmatically in the OAuth API.

golden knot
#

OMG yeah validating the filter returns the game version validated against!

#

brilliant, that may work

#

it's hacky and extra steps, so I can hope for a more official way in the future

worthy cape
golden knot
worthy cape
#

"game version" is a bit of a nebulous thing too, as not all changes are on the client, and some changes are either to the executable or data, sometimes bumping versions.

#

I've personally never cared about the patch server one, I rely fully on the version I extract from executables and assume it isn't unique.

golden knot
#

I think I'll plan to rely on the filter validation strategy (given that I'm working on a filter tool, haha)

tender echo
frank drift
#

false positive

#

Windows Defender lately doesn't like programs setting registry keys, and will flag any install/uninstall registry key setting as trojan

#

no idea if there's some new best practice that doesn't involve registry keys

formal kraken
#

@compact isle test

#

ah yeah works here (silent pings are kinda neat)

uneven venture
#

Hi, I'm trying to extract POE buff icons from in game assets. Using the schema description from https://poedb.tw/us/Bundle_schema (big thanks to whoever did that, btw) I managed to parse, decompress and extract all icons to png files. Thing is, the files in the bundles are identified by a hash and I couldn't find any way to associate them to the actual buff names or file descriptions. Anyone knows if this info can be found anywhere in game's data files?

worthy cape
#

Or you can use an existing tool to extract files like my bun_extract_file or something like VisualGGPK2.

#

Or depending on what files you're after, RePoE's data tree may have them pre-extracted and mapped up.

uneven venture
worthy cape
#

I've been meaning to remove some of the spurious dependencies from bun so that it can be built more easier, I forget if I've already committed that or not.

uneven venture
#

I have all the parsing and decompressing code working, was a bit of a headache at first but nothing too major. Just missing the meaningful unique names to attach to the icons.

worthy cape
#

As for the mapping from BuffDefinitions and other tables to the files, I don't know how they're wired up currently but the dat-schema should be fairly well known.

#

They should ultimately have a path somewhere which you can resolve against the bundles by the hash method.

uneven venture
#

A filename will be a good start. Once I see what they actually contain I'll know if they are good enough or I need to find additional data.

worthy cape
#

If you have a given full path, you don't need the whole path representation section.
The section is mostly useful if you want to enumerate unknown filenames.

uneven venture
#

I don't actually need to paths/filenames. I just need a buff name that identifies the icon.

worthy cape
#

BuffDefinitions has a key with BuffVisualsKey into BuffVisuals, which has a path stored in BuffDDSFile.

#

BuffDefinitions also has names, stat keys, IDs, etc.

uneven venture
#

BuffDefinitions is in game data?

rapid pagoda
uneven venture
rapid pagoda
worthy cape
#

ooz should build out of the box on macs, both new and old.

rapid pagoda
#

But I never really focused on that since, as far as I can tell, there's no legitimate source for the oo2core dylib on macOS.

uneven venture
#

Oodle is now open source and has all the libraries and headers in the free unreal engine.

rapid pagoda
#

Open source or available-source?

worthy cape
#

I'm sceptical about it being under a usable license for anything but Unreal work.

#

I've seen it as available-source and avoided looking at it past verifying that I could obtain it.

uneven venture
#

Didn't dwell on that since it's not relevant for this project. Just need the icons 🙂

worthy cape
#

My whole ingestion pipeline runs on pyooz these days, and most of my tools just use Inya for data access.

uneven venture
worthy cape
#

Yep.

uneven venture
#

Cool! Great work. Was really helpfull and saved me a lot of time.

worthy cape
#

It was a collaborative effort over a few weeks pre-Heist to figure it all out, but I wrote the majority of the docs and also made Bun back then.

uneven venture
#

Where do I find this BuffDefinitions? It's in the game files?

worthy cape
#

It's a DAT64 table, the data tables that underlie most of the game logic.

#

They're a fixed-width row format with columns of varying data types, with pointers into a variable length section for lists of things and strings.

#

The community is collaboratively guessing at the schema for these tables as they don't have any explicit structure.

uneven venture
#

Data.dat64.5.bundle.bin ?

#

Oh, ok. I will look into those links.

worthy cape
#

There's a whole heap of *.dat64 files in the Data directory inside of bundles.