#tooldev-general

1 messages ยท Page 137 of 1

rapid pagoda
#

The former are in Mods.dat; the latter are in Words.dat

#

(Incidentally, it disappoints me to no end that "Bone Zone" is not a potential name for Graveyard or Crypt type maps, even though "Zone" is in the word list)

rapid pagoda
#

you'll kind of have to guess which tags are relevant to maps, they aren't split out in any obvious fashion

#

... wait. do you mean the former? I'm failing to see how rare names could be useful for that

#

ahhhh, okay

#

so yeah, you'll find "Cyclopean" listed as a potential prefix for items tagged "urban", "dungeon", or "temple" -- and presumably Tower is "dungeon" (I didn't check)

rapid pagoda
#

I think the only tags which get used for map words are beach dungeon cave forest swamp mountain temple urban. (Now wondering what happened to island and plains.)

rapid pagoda
vestal pond
#

Does anyone know where something like _.index.bin is in ggpk of macOS?

worthy cape
#

I donโ€™t recall any differences apart from possibly the version field in the standalone pack. Steam uses the exact same data files as PC.

#

Not sure if my Hackintosh even boots anymore, as is tradition ๐Ÿ˜„

vestal pond
#

This is from the standalone one

worthy cape
#

Gonna have to copy them out, but it seems highly unlikely that the pack format should have changed.

worthy cape
#

All my infrastructure is underperforming and macOS can go diaf.

#

sigh
I should not have gotten up from the sofa, this still insists on UTF-32LE...

worthy cape
#

@vestal pond Sorry, I'm of no help today, got some stuff to work through.

vestal pond
worthy cape
#

It's in there somewhere.

#

(offsets meaningless here of course, as GGPK files are not deterministic across people)

#

Bundles2 has 226 entries here, so you're probably missing a ton of them.

#

The above is from adapting the GGPK template for 010 editor from UTF-16LE paths to UTF-32LE paths and hardcoding 2 entries in the GGPK chunk rather than thinking the version value is a child count.

vestal pond
#

my god! why do I keep making this kind of stupid mistake

rapid pagoda
compact isle
#

copious amounts of std::wstring in the client ๐Ÿ‘€

rapid pagoda
#

oh... oh no ๐Ÿ˜ฆ

visual verge
#

@worthy cape Are you Chinese?

worthy cape
visual verge
#

zao? ่ตต?

worthy cape
#

Took my nickname from an article on C++ in a home computer magazine in my youth, written by two brothers Zhao ๐Ÿ˜„

visual verge
#

I saw Chinese in your game path and thought you were Chinese

worthy cape
#

Ah, heh. I had copied chuan's path there to illustrate how the tool could be used.

#

I did install WeGame to try for myself with the help of Google Translate on the phone, but haven't gotten around registering a QQ number to log in with.

visual verge
#

I can give you an qq number

worthy cape
#

Thankfully the problem seemed to be more about command line handling than the Tencent version itself, so I only have to fix that code.

visual verge
#

Wait for me

worthy cape
#

I'll register my own some day, I assume it's possible for foreigners.

visual verge
#

Play online games in China need real name authentication to prevent underage addiction to games

worthy cape
#

Ah, only saw the text on the website and login screen requiring a QQ number. I'll probably not bother then as the data formats seem the same.

visual verge
#

All games in China require real name authentication

#

Oh, this is great!

worthy cape
visual verge
#

Is this thing going to be open source? I need this stuff.

worthy cape
#

Still have to figure out how to reinterpret the keys for rotation and flipped tiles.

#

The biggest problem I have now is that there is not enough information to uniquely place tiles in a hideout like it does in the game without manual work or reimplementing level generation.
I don't want to touch the level generator in any way, so it's going to be a bit of a manual process to populate layouts so that they look similar enough to use as hideout backgrounds.

#

I don't know how much of this I want to open up, as it has the possibility to be misused.

visual verge
#

I'm planning to do some custom client work and need to use these

worthy cape
#

Tool is also very tied to my local delivery system for game files, fetching them on-the-fly from NAS.

worthy cape
#

Trade 502, everyone panic brittlWobbleBee

rapid pagoda
#

/trade 502 am I doing it right?

worthy cape
#

@velvet fog While doing some wiki digging I noticed that the icons for the Expedition stackable currencies seem to be off-by-one for Greater Artifact and up at https://poedb.tw/us/Stackable_Currency, seems like the 1x1 icon for Greater is missing and the rest have slipped up one step.

daring moss
#

Any tool devs around who interacted with PoE's OAuth API? I recently got my stuff for it but no matter what I try, at the step where I trade in the code for an access token I always get shouted at for apparently wrongly using GET instead of POST, while I explicitly made sure that is not the case yep

daring moss
#

okay

#

managed to debug this stupid thing

#

for anyone who might run into it too: I forgot to include the www. at the start of the /oauth/token url so I was handed a redirect to include it

#

and it seems like my client of choice decided that when following redirects it should always change the method to GET

civic crane
#

@daring moss At least your client complies with spec

Note: For historical reasons, a user agent MAY change the request method from POST to GET for the subsequent request. If this behavior is undesired, the 307 (Temporary Redirect) status code can be used instead.
https://httpwg.org/specs/rfc7231.html#rfc.section.6.4.3

daring moss
#

True that

#

It doing so silently was a bit of a headscratcher though

worthy cape
#

Thanks for the flashbacks to an early job I had in researching and improving the client ecosystem for WebDAV file access, including support for client certificates and redirects to other hosts on all sorts of verbs.

#

(the storage system had a fallback mode where it could "proxy" downloads for somewhat incapable clients, but the primary access method was to make requests to the access node and get redirects to dumber storage pools for high throughput and distributed access)

keen dragon
hazy fiber
keen dragon
#

what do you mean by 'pool'?

hazy fiber
#

if you have any idea how to do max hit taken correctly, please be my guest, but currently its just using super old quick and dirty logic from when I initially implemented it, by just dividing the pool size by the conversion amount and the damage taken mult of that type and picking the smallest value

hazy fiber
#

also the current max hit taken doesnt factor in modifers to enemy damage (as thats more recent and currently only applies to ehp)

keen dragon
#

would you mind giving a concrete example so it's easier to understand

hazy fiber
#

using a similar example to what you linked, you have 3000 life, 2000 es (same 5000 "pool"), 10000 armour, 1 end charge and 25% of phys taken as chaos, whats the maximum hit taken?

keen dragon
#

I assume the 25% of phys to chaos applies before any reductions?

hazy fiber
#

yes, taken as is a very early step, and we will assume 0% chaos res

keen dragon
#

ok, give me a second to put it in

unreal drift
#

hey guys, does anybody know how the x and y values for groups in the skilltree json works?

#

or more specifically, where the origin point is on the tree

#

I'm assuming the origin is in the middle like so but I'm not 100% sure

#

the reason I'm asking is because I'm working in canvas where 0,0 is the topleft most point of the canvas, so wondering if I gotta do some math to translate the values

unreal drift
#

thanks, i think looking through that lua file is gonna help a lot ๐Ÿ™‚

#

bit out of my depth here

worthy cape
#

There's definitely peeps around here that know how it all fits together, especially after half of tooldev made atlas tree apps ๐Ÿ˜›

unreal drift
#

well, it seems it definately uses 0,0 as the middle ๐Ÿ™‚

worthy cape
#

Looking at renderGroup, it seems to be largely like that.

unreal drift
#

i have something that if you really really squint resembles the tree now ๐Ÿ™‚

worthy cape
#

The best kind of WIP.

#

Hey, I named my asset viewer Squint. I know it all too well.

unreal drift
#

๐Ÿ™‚

#

i know its only squares but damn im so happy its starting the resemble the tree, was a big step ๐Ÿ˜„

mortal bone
#

0, 0 is the middle, but that middle is based on the min/max x/y. For example, the atlas tree has 0, 0 at the bottom middle

grave wren
#

wanted to make a small tree for the discord bot embed too but it looked bad when scaled down templarSad

worthy cape
unreal drift
#

another question for those knowledgable about the tree, are the icons for the nodes centered on their location or are they anchored to the topleft

#

i.e do I draw the circle for the node around with the location of the node as the origin point?

mortal bone
#

the anchor for an icon asset is half the width/height

unreal drift
#

thank you, it should be centered on x,y of a given node then

#

I'll check out the ts

unreal drift
#

sorry to bother again, working on positioning nodes now relative to the group currently stuck on calculating the correct angle

#

I'm wondering how the orbits array is used for a given group

#

so i understand that a node has an orbit prop and orbit index prop, and that the orbit prop relates to the distance of the radius from the group, and the orbitindex is the index of angle at which it is positioned

#

I see emmit's solution uses some logic to determine the array of angles dependant on the number of skills per orbit, so I have implemented that as well

velvet fog
unreal drift
#

so oxid is the index of the number of skills per orbit correct?

velvet fog
#

ya

unreal drift
#

okay, I understand that

#

but how is the orbits array of a group used?

#

i.e

#

1:
nodes: (15) ['5865', '38999', '24528', '59920', '63673', '29630', '48904', '8592', '63583', '42861', '50024', '32251', '57560', '9271', '29294']
orbits: (4) [0, 2, 3, 4]
x: -11294.2
y: 3798.7

hazy fiber
#

tells you that group contains those orbits

velvet fog
#

use $node['o']

#
o    Radii of orbit (0 to 4, orbitRadii = [0, 82, 162, 335, 493])
oidx    index on the orbit (skillsPerOrbit = [1, 6, 12, 12, 40])
unreal drift
#

okay, I think I was confusing myself then

#

the group.orbit array is irrelevant to position I guess

velvet fog
#

orbits is associative array of orbitals (i.e. SkillTreeNode.oidx), but you can discard this for render

unreal drift
#

yep yep working on rendering at the moment, already feel like im drowning ๐Ÿ™‚

worthy cape
#

If I knew the full scope of my project when I started I would never have tried. Keep on trucking ๐Ÿ˜„

unreal drift
#

what im not sure about is how you know the index of skillsPerOrbit for a given node

#

so a node has an orbit and orbitindex, orbit references the orbitRadii and the orbitindex refernces the index of an array of angles based on how many nodes there are if I understand correctly

#

but the array of angles is calculated using the skillsperorbit

#

not sure how I know this for a node

worthy cape
unreal drift
#

yeah seen that

#

I have a function that takes in a value of skillsPerOrbit and returns an array of the angles

#

what im struggling with is how do I know the skillsPerOrbit for a nodes orbital? I know the index of it in that array of angles if you know what I mean

#

but I need to know how many skills are in the orbital i.e 1, 6, 16, 40 for a given node

worthy cape
#

Ah.

#

No clue there really, did my best to not find out while people were doing it ๐Ÿ™‚

unreal drift
#

๐Ÿ™‚

oak estuary
#

Isn't that just the first table in the page that zao linked?

unreal drift
#

scratch that

#

what I mean

#

the orbit of a node tells you both the radius and the number of segments in its orbital?

velvet fog
#

return 2 * Math.PI * node.oidx / skillsPerOrbit[node.o];

unreal drift
#

amazing thank you, my brain didnt connect that at all

unreal drift
#

thanks emmit yes this is what I was doing, I found your code in the first link and made a similar function

#

my mistake was not understanding that the orbit of a node also describes the amount of segments in its orbital

daring moss
#

Anyone willing to share how they handle the API's ratelimits? the whole "they can change at any time" shenanigans kinda scare me into fucking it up haha

daring moss
#

do you update buckets with each request you send out?

#

ahh, okay

#

I was worried specifically because of this line in the docs:

These limits are dynamic and can change at any time depending on our requirements.
#

sounded like they might change multiple time in an hour

#

fair enough

#

looks like I have to write my own leaky bucket implementation sadge

#

Prolog

#

oh, looks like that is completely separate from the language haha

#

there isn't any rate-limiting written in it yet unfortunately

worthy cape
#

Yay, name conflicts again between old established terms (the Prolog programming language) and this here Prolog, whatever fancy web/app product without awareness of the past.

daring moss
worthy cape
#

Also, writing software in Prolog? Brave ๐Ÿ˜„

daring moss
#

not too bad honestly

#

figured out a stack where I can have it both on the back- and frontend

#

I wonder how the leaky bucket algorithm applies here. given the api rate limit header format X:Y:Z, I assume your bucket can fit X requests. Does it just leak all of them at once every Y seconds?

rapid pagoda
daring moss
#

oof ouch my heart

unreal drift
velvet fog
#

do you decode the .itemblob file format?

rapid pagoda
rapid pagoda
#

Taking another look at it now, though, I see some interesting structure in it. Part of the structure contains some u16 u8 patterns, with u16 referencing Mods.HASH16 and u8 containing the value of the mod

#

for example:

Metadata/LeagueInfoPanelItems/Scourge/RageUrge.itemblob:

55 bc a1 3a = BaseItemTypes.HASH for Iron Greaves

00 d4 7b 29 01 00 10 00 00 00 00 00 01 00 00 00 05 04 00 2a 05 00 02

bd 1d 04    -- HellscapeUpsideMovementVelocity1 = 4
7b 16 ...   -- HellscapeDownsideReducedColdResistance1 = -20 (not sure where value is)

6c 02 60 c9 23 a8 7b c9 aa b8 04

aa 22 80 5c -- LifeRegeneration1 = 1.5 (two bytes?? how is this encoded?)
e9 24 0b    -- IncreasedLife1 = 11
b9 ae 0a    -- MovementVelocity1 = 10
a5 5c 0a    -- ColdResist1 = 10

00 09 2c 02 04 04 03 
rapid pagoda
#

It'd be neat if we could get something like this from the stash tab river instead of the JSON. I imagine it'd save a lot of bandwidth.

velvet fog
rapid pagoda
#

Yeah, that's the one I'm looking at

#

Oh, and I bet the 02 before the hellscape mods, and the 04 before the normal mods, are counts.

velvet fog
velvet fog
#
Metadata/LeagueInfoPanelItems/Scourge/OblivionKeep.itemblob
00 a5 ed df -- Simple Robe
00 
e9 7b       -- ItemVisualIdentityHash
29 01 00 10 00 00 00 00 00 01 00 00 00 05 04 00 2a 05 00
02
5f 4d 14    -- HellscapeUpsideLightningResistance1
eb ce 01    -- HellscapeDownsideDealNoPhysicalDamage___
02 
d2 b1 ce f5 -- WordsHash
2c b8 8e e8 -- WordsHash
04
a5 5c 0b    -- ColdResist1
50 35 0d 06 -- LocalIncreasedEnergyShieldPercentAndStunRecovery1
88 45 0a    -- FireResist1
e9 24 0e    -- IncreasedLife1
00 1e 4c 06 06 06 02 01
#
aa 22 80 5c -- LifeRegeneration1 = 1.5 (two bytes?? how is this encoded?)
               5C = 92, 92/60=1.5
#
7b 16 6c   -- HellscapeDownsideReducedColdResistance1 = -20 (not sure where value is)
              it's negative value, 0x6c-0x80=-20
#
02 
60 c9 23 a8 -- WordsHash, Rage
7b c9 aa b8 -- WordsHash, Urge
velvet fog
#
d4 7b        -- ItemVisualIdentityHash
velvet fog
#
Scourge/Mageblood.itemblob
40 bd 34 3f -- BaseItemTypesHash
00
51 bc       -- ItemVisualIdentityHash
29 00 02 00 00 dd 7b 4b 2c 00 3b 01 00
01          -- implicitNum
3d 1f 23    --
01          -- wordsNum
b7 1a 5d d4 -- WordsHash
06          -- explicitNum
22 de 04
89 87 01
8e b5 01
16 69 32
a9 de 19
43 24 19
unreal drift
#

I might come back to it again in the future at some point ๐Ÿ™‚

frank drift
#

the background image would be an easy addition that would make it look better

unreal drift
#

you mean for like each node group?

#

there is lots I wanted to add but I spent about 90% of my development time wading through how to actually render the nodes and connections, maths is really not my strong point ๐Ÿ˜ฆ

#

or graphics really

frank drift
#

right clicking the background crashed the tab, fun

oak estuary
#

Apparently it doesn't work at all in Firefox? Or is one of my plugins misbehaving?

hazy fiber
unreal drift
#

not tested in firefox ๐Ÿ˜ฎ

hazy fiber
#

no rendering of nodes, but tooltips seem to work, and can move the tree

unreal drift
#

brave chrome and edge work for me

#

illl check firefox

oak estuary
#

I would hope so since they're all built on the same tech ๐Ÿ˜„

unreal drift
#

;p

#

yep its borked in firefox, not sure what is causing that

#

guess its handling the js and the canvas differently

daring moss
#

does anyone know why requesting https://api.pathofexile.com/stash/Archnemesis with the stash scope gives me a 401?

#

am I incorrectly authing?

#

or misusing the endpoint?

civic crane
#

surely your code consists only of one line

daring moss
#

surely it does not

civic crane
#

so you verified sent headers and can show them to us, interesting

daring moss
#

the tooling for prolog is a bit weak so I cannot just verify the headers it sends easily. That's why I was asking if that error only happens on bad auth (pointing at messed up headers) or, if it could have other causes

#

I have since went through painstakingly manually pushing every little change to my server and trying to use a webhook service to inspect my sent requests and realized that something was, in fact, awry with the headers I was sending, which led me to a fix

#

after redoing a whole lot of other unrelated stuff

#

but thanks for this amazing assistance you have provided

civic crane
#

If something would be broken on ggg side Exilence Next would stop working first

daring moss
#

I wasn't concerned about something on their side breaking. I have finally ironed out the kinks in my OAuth client implementation and tried to fetch some stashes to test out the token I got. which failed on my side

#

I don't see how curl would help me with ironing out problems in my code

formal kraken
#

verify that what you're doing should work

daring moss
#

fair point

#

I guess I should figure out how to get my token out of there to test stuff with it

civic crane
#

ggg fixed it, maybe Art directory now is not special too? ๐Ÿ™

primal schooner
#

is there any way to get the Stash_ID of a stash tab in game?

velvet fog
#

no idea, but /api/stash/<league>, /character-window/get-stash-items and /api/public-stash-tabs

grave wren
grave wren
signal ferry
#

uh guys need to ask some sort of stupid thing

#

as I always develop apps for myself, first time ever trying to publish something and dunno how to hide config.yml

#

like it has headers, and header has my dev OAuth 2 key

#

python

civic crane
signal ferry
#

now lets change entire yml code again...

#

sigh.

#

thanks!

signal ferry
worthy cape
#

Stuff that interacts with PoE web infra I believe is kind of assumed to have some part of it hosted dealing with the OAuth junk.

signal ferry
#

yeah I need to host bearer oauth on a server...

grave wren
#

no if you dont share your env your setup wont work

civic crane
#

https://www.pathofexile.com/developer/docs#guidelines

OAuth Credentials
Keep your credentials safe.
Don't share your account or application's credentials with anyone else.
Don't include any application keys or credentials in your code.
Don't embed keys or credentials in a distributed binary.
signal ferry
#

this is literally hardest part of the code it is better to use myself I decided.

velvet fog
worthy cape
# velvet fog <@128835688366997504> Do you have an updated version of the arm doc https://zao....

I'm in the process of updating it now that I have figured out more stuff, but for the things you wonder about:
The x-by-y number of entries is determined by the width/height values in the earlier 1-by-1 entry. If that one isn't a k-entry, I assume 1x1.
Between the 2*(a.0 + a.1) entries and the k x-by-y section there are a number of lists, each of which has a count followed by that many entries, vaguely parsed like this:

        auto ver = ret->version_;
        size_t const d_kinds = ver >= 29 ? 6 : ver >= 26 ? 5 : ver >= 20 ? 10 : 9;
        for (size_t kind = 0; kind < d_kinds; ++kind) {
            size_t d_count;
            po.reset().integer(d_count).eol();
            for (size_t i = 0; i < d_count; ++i) {
                auto &d = ds[i];
                po.reset().integer(d.x_)
                  .spaces().integer(d.y_)
                  .spaces().real(d.h_)
                  .spaces().quoted_string(d.key_)
                  .eol();
#

I haven't done any mass parsing recently, do you have any particular files that are weird?

#

Pushed my current notes, should be reasonably correct.

velvet fog
#

There is no integer line before k-lines, how to deal with it?

worthy cape
#

Earlier in the file there is a single k-entry. The first two values in that is width/height of the big grid.

#

Ex: k 13 13 2 2 0 0 39 39 39 39 39 39 39 39 1 3 1 1 0 0 0 0 0 0
This indicates that the room has 13x13 tile keys in the big grid, and the rest of the digits are about constraints on the room as a whole.

velvet fog
#

so it will contain n-height k-lines

worthy cape
#

Aye, there will be 1x1.height number of lines, and each line will have 1x1.width number of entries.

#

The first line is the bottom-most row of the room, that is, the one with the lowest Y coordinate in the world.

#

There, the doc CI has run.

#

I've only recently gotten the details of the constraints figured out, so there can be inaccuracies as the docs diverge from the code.

#

I started with Uthred's arena which was a mistake, as things there are rotated several times before it reaches the configuration that it has in the real game ๐Ÿ˜„

raw otter
#

karui shores is a nice complicated room for visualization purposes :3

worthy cape
#

Ooh, that's fancy. Seems like you've got quite a bit more sorted than I do.

#

I'm always surprised when new areas take time to load until I look at the console and see my backend churning:

worthy cape
#

I'm quite happy I don't need to care about most aspects of level gen for hideout vis, but a lot of them still matter and I have some big open problems still about walkability of tiles as the data there is in undeciphered formats.

raw otter
#

this is how I generate tile meshes

worthy cape
#

Ah, derived from the edge indices.

velvet fog
#

arm versions

    [14] => 110
    [15] => 2
    [16] => 26
    [18] => 73
    [19] => 7
    [20] => 36
    [21] => 45
    [22] => 3096
    [23] => 13
    [24] => 4
    [26] => 7713
    [27] => 2070
    [28] => 534
    [29] => 3492
    [30] => 1743
    [31] => 2609
velvet fog
#

works well with new document for all current .arm files

#

exception blank line in some arm, Metadata/Terrain/EndGame/MapSlumPrecinct/Rooms/SlumWalkway/var_1.arm

version 22
2
"Metadata/Terrain/RuinedCity/SlumArch/city_slums.gt"
"Metadata/Terrain/RuinedCity/SlumArch/city_slum_arch.et"
7 7 1
1 1
""

0 1
k 7 7 0 0 0 0 21 21 21 21 21 21 21 21 1 1 1 1 0 0 0 0 0 0
worthy cape
velvet fog
#

Metadata/Terrain/Act6/Area14/Rooms/shrine_1_1.arm missing solo k

worthy cape
#

In the case of this shrine room, the room is uninteresting geometry-wise with just a standard fill tile as its only tile, the point of it is the attached shrine AO and the blood decals.

velvet fog
#

Assorted footer lists

v14: doodads, decals1
v15~v22: doodads, decals1, decals2
v23~v26: doodads, decals1, decals2, unkArray2
v27: doodads, decals1, decals2, unkArray2, unkLine3
v28~v31: doodads, decals1, decals2, unkArray2, unkLine3, unkLine4
worthy cape
#

Spent a while tonight trying to figure out how I was somehow misinterpreting Karui Shores as the area seemed to be missing a lot.
Turns out that my viewer is still using late 3.16 data files via my data delivery service while my expanded reference tree on disk is current 3.17.

rapid pagoda
#

Heh. Whoops

#

What are you using for data storage, btw? I recently discovered minio which is pretty neat (S3 compatible, locally hostable)

velvet fog
#

How much disk space is there now for historical data?

worthy cape
#

Still using my homemade system with hash-addressable loose files on a web server (170 gig) + 20 gig of index JSON.
Havenโ€™t counted how much the raw releases take as itโ€™s hard to measure on the current RAIDz volumes but somewhere around 11 TB.

#

My C++ codebase caches the index files for the releases I care about on the client machine and fetches data files on demand.

#

Went for the simplest approach that worked there rather than a local database server or database file, as I had trouble tuning for query performance and had no good solution for multiprocess access.

#

Newest innovation on the data front is that Iโ€™ve started zipping the releases for long term storage and processing, as the file system traversal cost too much.

#

Download and ingestion is still manual so that why Iโ€™m behind on what is available to my testbed.

velvet fog
#

170g seems fine, want to build one for myself

worthy cape
#

Current data tree with individual zstd compression: 196G

#

That figure could be a bit of a lie, not sure if du gives correct output on this machine. Roughly 2 million distinct payloads.

velvet fog
#

how are files stored? ex: /15d/15d41118c63554a3ebf6aeb5ffa28a74903d98eb3d3730a161e083a03e163f7a?

worthy cape
#

Yeah, named by content hash, in directories of first three hex digits to keep the file system happier.

velvet fog
#

2000000/(36*36*36)=42.8

worthy cape
#

Index files are NDJSON with entries of hash, path, path hash and file size.
Something not JSON would make loading faster for sure.

velvet fog
#

I prefer MySQL

worthy cape
#

One goal for me was something that could run on user machines without any external services or with only file databases like sqlite3

rapid pagoda
worthy cape
#

In total 2M unique files, 1M unique paths, 250M file entries.

#

You start needing a ton of indices for queries and the data is hard to shape or partition in any way that makes it good to query.

#

Decided to focus on the actual tools rather than universal access to data for a while.

#

Itโ€™s really neat however to run the viewer on a new computer and see it populate the local cache on the fly.

velvet fog
rapid pagoda
#

Depending on what kinds of queries you want to run, it might make more sense to structure the database as one row per path + file hash, with the row including the range of versions that file existed in.

#

It'd make queries for "what files existed in this specific version" more difficult, but would dramatically reduce the number of rows required, and would make displaying changes to a file / in a directory much faster.

velvet fog
velvet fog
velvet fog
worthy cape
#

Kind of funny to see "apa", "bepa", "cepa" there - they're the foo/bar/baz kind of metasyntactic variables I used at the time for unknown stuff. "apa" being "monkey" and the rest being nonsense are you go through a/b/c/d ๐Ÿ˜„

#

You seem to have misspelled "Dimension", there's 16 alternatives per hex digit so two digits puts you at 256 directories so ~7813 files per dir.

velvet fog
rapid pagoda
#

๐ŸŽต this is the league that never ends
it goes on and on, my friends...

worthy cape
#

Plenty of time to work on tools in other words.

dense shore
twilit field
#

is modding allowed in poe?

worthy cape
#

"no"

#

You may not alter or interfere the client or its data files. You may run third party tools that adhere to a set of rules, typically showing overlay windows above the game and doing specific client actions in response to user actions.

twilit field
#

So like I cant change the ui or grab damage numbers?

worthy cape
#

Correct. There is no mechanism for either of those.

twilit field
#

dang

frank drift
#

you could make an overlay, but no messing with the program

minor palm
#

Does anyone happen to know how the ImplicitTagsKey array in Mods.dat is composed? Are some inherited Tags derived from sources outside of Content.ggpk?

In many cases two Mods with the same ModType will have the same ImplicitTagsKey array. But there are exceptions, such as:

rid      Id                                                ModTypeKey    ImplicitTagsKey
16942    JunMasterVeiledColdDamageOverTimeMultiplier___    6309          [715,663,717,637,318,310]
17538    ColdDamageOverTimeMultiplier2h1_                  6309          [715,663,637,318,310]

In other words, these two Mods have the same ModTypeKey but different ImplicitTagsKey arrays, in this case with 717 => "unveiled_mod". So ModType alone is not sufficient to know all inherited Tags. But I can't seem to find the other contributing sources (if they exist).

rapid pagoda
minor palm
#

Right. I've searched other data files trying to find ones from which those arrays might be composed, without success. I wasn't sure if I was merely overlooking something, so I thought I'd ask if anyone already "knows" that those particular data are not in the ggpk (thus implying that particular field is derived from non-client sources). Probably too esoteric for someone to incidentally know, but I figured I'd ask anyway!

wintry swift
#

thank god, I started writing my own map mod regex tool and was also wondering where to find the info in words.json. turns out you created the tool already! thanks โค๏ธ

rapid pagoda
minor palm
#

Yes, I know -- the example I used above is from Mods.dat. Maybe I'm being unclear. I'm not talking about the data structure itself.

  • Mods themselves can have Tags, covered by TagsKey in Mods.dat. TagsKey says "Here is the list of all the explicitly-applied Tags on the Mod itself."
  • Mods can also inherit Tags from components, covered by ImplicitTagsKey in Mods.dat. ImplicitTagsKey says "Here is the list of all the inherited Tags this Mod received based on other components, such as ModType." But the information about which components contributed which Tags is not present here.

I'm looking for the list of all contributors to a given Mod's set of inherited Tags.

Unfortunately the answer seems to be "that list of contributors cannot be discerned from the ggpk alone", but I figured I'd ask here as a longshot.

velvet fog
#

as I remember, there are at least 4 Tags type used in Mods.dat, Spawn/Added/Generated/Implicit
Spawn: intersect with BaseItem
Added: added after Mods applied
Generated: multiply after Mods applied
Implicit: intersect with Craft

formal kraken
#

@mortal bone you're making poeskilltree right? I would like to change the skill tree link on pobb.in which goes to the official website to poeskilltree.com or maybe a fullscreen overlay/modal. What do you think?

mortal bone
#

@formal kraken sure, I don't have any issues with it being used. Everything is cached through cloud flare, so it wouldn't be any extra cost to me.

formal kraken
#

this might require you to change some headers though

mortal bone
#

Feel free. I am not sure how good webgl does in an iframe

formal kraken
#

aight, I'll try some stuff locally, performance should be the same though

tawny agate
#

Did someone already write a PoB code parser in Go?
xml is pain so if I can save myself to write the data structures it would be great

hazy fiber
#

maybe not in go, but there should be somone around who has one in somthing other than lua

tawny agate
grave wren
#

i know one exists for python didnt see it for go yet

hazy fog
#

damn I can't ping deputy tooldev anymore

#

yeah you're on your own for new tooldevs now PES_LMAO

#

enjoy your meaningless role PepeLaugh

worthy cape
#

Youโ€™ve gone and become a free ferret? HYPERS

worthy cape
#

Has anyone found any surprises in the current patch due to DX12 support being added, or is it much the same?

#

I'm a bit afraid that the material fragment system might've been touched, but hopefully it's much the same.

civic crane
#

I noticed that they removed loading screen and now I see texture streaming in action ๐Ÿ˜„

worthy cape
#

Unsurprising to anyone, my data tooling is still in shambles.

brave steeple
#

hey I'm pretty new to coding, but I'm trying to create a tool that helps price bulk currency sales by taking clipboard information from poe and then finding the chaos value of the stack via poe ninja's api

#

I've managed to learn how to call the api and get a string of the json but I'm kind of stuck on how to do anything more pepelaugh

#

using C#

#

at the moment I'm able to get the information from the user's clipboard and will eventually be able to parse out the stack size, and like I said I've got the api's output

#

just not sure of how to access these fields in my logic for working out sale price of the user's hovered currency stack

#

to give you an idea of how I'd like this thing to work:

  1. User hovers over stack of currency and hits ctrl+c
  2. Program takes clipboard information and gets value of the stack (in chaos) from api
  3. Copies something like 2280/19 to user's clipboard for easy sale
civic crane
#

@brave steeple if you want to learn coding keep doing, but from practical view poe.ninja is not best for bulk pricing. More items in stock you have, more price you can demand, but poeninja prices are for 1 qty.
So to correctly get price you need to make request to the trade api, at this point you're just reinventing price-check apps (Awakened Poe Trade, Poe-Overlay fork)

brave steeple
#

appreciate the response and I do plan on continuing regardless of whether or not this pans out

I was mostly looking for an easy way to get the 2280/19 string into poe because for some reason my brain sucks ass at pricing stuff

#

and everyone has told me that for a project you should try and automate something that you already do ๐Ÿ™‚

civic crane
#

If you dont use mentioned tool it's confusing for new player indeed

brave steeple
#

you know I've been using awakened poe trade I think since it was first released and never noticed that omegalul

#

jesus christ 2Head

#

well maybe I'll finish it even if it's not useful, or find a new project to improve with

stoic mason
#

Maybe I'm misremembering, but isn't there a way to convert prices to chaos orb equivalent directly in a poe trade api request? I swear I remember seeing something like that a while back, but can't find it now

#

Like I swear it had something like {chaos: 150, exalted: 1.5}. But maybe I'm thinking of a different api

frank drift
#

they can go weeks without being updated because of the db design

#

I usually exploit the hell out of the incorrect rates

formal kraken
#

There is a browser plugin that does the conversion and shows both on the website, maybe you're thinking of that?

frank drift
#

which uses poeninja for the rate

rapid pagoda
#

the internal rates cdr is talking about get used when sorting by chaos equivalent

eager kettle
#

Anyone having problem with Mercury Trade not tracking the trades anymore?

#

the overseer still works

#

but it just doesn't track my trades anymore...

brave steeple
#

how do you guys determine the type of item being hovered from the clipboard data?

are you mostly matching the string?

for example: if clipboard string contains "Stackable Currency", set item type = "Currency" ?

#

that's how I did it for my little tool but I'm looking into expanding into everything poe ninja api provides

civic crane
#

yes, section by section, line by line, using switch'es or maps where is needed

brave steeple
#

perfect, sounds tedious but not too hard to accomplish

#

ty

frank drift
#

can always take a look at the code of other tools

brave steeple
#

that's a good idea!

I tried that a bit but I'm not knowledgeable enough yet to know where to look for that stuff

#

I only know C# and a bit of python

granite field
#

Hi y'all ๐Ÿ˜ I'm working on a little tool to track how long you've been playing and suggest breaks. Part of the plan is to parse Client.txt for area changes and consider whether you're in a monster zone or not, offering reminder when you enter a safe zone. String matching the log for "You have entered" isn't hard, but what I'm wondering is...

Is there a handy dandy dataset of areas that includes their categories, so I don't have to manually type up a list..?

worthy cape
#

Might be some field in WorldAreas.dat maybe but not sure if any of that data is accessible easily.

#

Ugh, that's messy. Combination of IsTown, IsMapArea, IsHideout, IsLabyrinthAirlock maybe.

granite field
#

that sounds like it would work! quick question... what is WorldAreas.dat / how do I access it? ๐Ÿ˜ฌ I don't know much about how PoE's data is stored or data mined. I tinkered with RePoE for something in the past but I don't think that has world information. Looks like PyPoE might be what I need? The docs mention using ggpk viewer to browse .dat files...

worthy cape
#

RePoE, much like the wiki, is fed by PyPoE data but only a subset of it is used.

#

DAT files are data tables with each entry a row, with columns indicating assorted properties.
In the case of WorldAreas.dat, each row is a zone and you've got its identifier, human-readable text and a lot of flags.

#

Oh hey, there's an "Export data" button ๐Ÿ˜„

granite field
#

perfect, thanks!

primal schooner
#

@nova hamlet do you have any plans to have any sort of forum / db for community supplied emulator scripts? (on or adjacent to COE.com)

primal schooner
#

Kranglandrantor 9001

#

like, after someone builds a gear crafting script in the simulator

#

having the option of marking them public / tagging / posting to a db

nova hamlet
#

Kranglandanator 9001 then

#

lol

primal schooner
#

yeah

nova hamlet
#

Well yeah im working on it

primal schooner
#

sorry was lookign at wrong tab

nova hamlet
primal schooner
#

ok, so you are working on a public DB

#

is that section live?

nova hamlet
#

I already have a couple of contributors who have their poe accounts whitelisted to log in (using oauth2), they can save their sequences and classify them

primal schooner
#

ah right on

#

ok. i'm working on some stuff w/ PathOfMatth he's building a bunch for a dataproject

nova hamlet
primal schooner
#

๐Ÿ‘

#

that jsut means I don't have to build one on his site... ๐Ÿคฉ

nova hamlet
primal schooner
#

have you emailed / DM'd him instructions on how to log in / submit?

nova hamlet
#

The reason why its not public yet is there needs to be some kind of vetting process of the crafts so the library is actually valid and not full of irrelevant things, which is something Matth aluded to as well

primal schooner
#

will you be able to sort by user?

nova hamlet
primal schooner
#

i mean, most ppl are going to use one person, or by item type, so like maybe there's a weighting system by users (verfied) / views count?

nova hamlet
primal schooner
#

sick ok great

#

COE is all JS on python?

nova hamlet
primal schooner
#

yeah, seems a reasonable path

nova hamlet
primal schooner
#

ah kk

nova hamlet
#

There is a room on TfT called craftofexile-simulator i think, where people can submit crafts there also, that was another possible avenue for vetting them

primal schooner
#

I try to use TFT as little as possible.

tawny agate
#

@nova hamlet I hate you, the Kranglandanator 9001 is a drug harder than PoB atm

primal schooner
#

what will be really cool is, after there is a healthy DB of all these user submitted crafting scripts, Neb could employ some AI to have a De-kranglandanator 9002, where you paste an item into it, and it breaks down the steps of how to craft it.

tawny agate
#

Seems risky, Elesshar could sue

primal schooner
#

idk who that is

nova hamlet
#

But yes the only way i see it being possible to paste an item and it finding the optimal way to craft it is by having a huge library of crafting recipees to check it against, having a script outright figure it out just from methods/affixpool is insanity considering how stupid complex the crafting system is.

frank drift
#

definitely doable, but not easy

primal schooner
#

there's learning AI that could easily deconstruct items once there's a significant library of crafts processes

hexed mesa
#

just generate every possible craft, maybe it would finish before heat death of the universe

lean phoenix
#

Hi I cant find how list items like armour by API ? Some one knows ??

thin siren
formal kraken
thin siren
#

Yeah but who owns poewiki?

tawny agate
formal kraken
#

maybe it's about hot linking, but you shouldnt do that anyways, the link might change at any point

worthy cape
lean phoenix
#

Yes, but I want api json data, and links you provided don't show how I can request for it. First is site table, I don;t want read data that way to program, and second is some code from second hand not native API request. Is there API request to read items ?

civic crane
#

nope, ggg doesn't have one

lean phoenix
#

It must be, the item tables from poe site are made with such request but we don't see this, then there is such request...

#

Ok I will email to Them

worthy cape
#

The website data can be built serverside without the need for an API endpoint.

#

The wiki can sometimes act as a data source via the cargo API as well, but to be honest, RePoE or your own DAT work is the best bet.
GGG just doesnโ€™t have (or may not necessarily want) that data in an endpoint.

lean phoenix
#

Ok, first I requested for this on poe site

worthy cape
#

The target audience for the website is humans, with some endpoints useful for other tooling like the passive skill trees and character info.
Similarly the trade site has most of its API to serve itself, with a limited surface to construct searches.
The real API API is the one outlined in the dev docs and is the basis for most real (web)apps.

long sky
worthy cape
#

Tried to look up the license for the file mentioned but had to construct an artificial URL from the file info page of another media file.

long sky
#

Nope that seems borked somehow

#

I've never tried to search for media files that way before ๐Ÿค”

#

will sort tonight once I'm no longer working

worthy cape
#

Gotta love when you find bugs over a decade old ๐Ÿ˜„

mint karma
tawny agate
#

r-r-g|r-g-r|g-r-r|r-r-b|r-b-r|b-r-r could become r-r-[gb]|r-[gb]-r|[gb]-r-r

mint karma
#

Yeah, I tried to do some optimizations, but still room for improvements

mint karma
tawny agate
#

It's probably okay to replace [rgb] by . in a lot of cases

mint karma
#

yeah, I feel if you get the error message you can just choose a broader option I guess

#

It should be updated with your simplification idea now @tawny agate, thanks for catching that one!

mint karma
hexed mesa
#

@compact isle Hi! I think pseudo mods for added damage are not working correctly. What I mean by that is, instead of using actual values from added damage stat it uses the average of those values.
For example lets say we have an item with Adds 14 to 16 Cold Damage to Spells, one would assume that pseudo Adds # to # Cold Damage to Spells would be Adds 14 to 16 Cold Damage to Spells, but instead it uses average of both values, so it ends up being Adds 15 to 15 Cold Damage to Spells
https://www.pathofexile.com/trade/search/Archnemesis/55LKGanSa

compact isle
#

that's the correct behaviour as each stat only stores one value so min/max ranges like that are averaged

hexed mesa
mint karma
#

Anyone have a list of all possible rare map names? or a large list of maps. Working on a search string generator for map mods and I want to avoid matching rare map names

mint karma
#

I guess i am ๐Ÿ˜‚

#

Just started on it today so there are probably some bugs too

#

Your tool looks solid!

#

Did you also generate the unique search queries?

#

That was a fun little puzzle

#

For the map mods

#

I mean the regex you end up using to uniquely match map mods

#

I am taking the other modifiers, map names and rare names and generate it

#

Sweet

#

Similar approach as I'm doing.

#

Yep. I really like the language.

#

Im just generating the typescript data files directly

#

Saves me a lot of time/work

#

Hah! That's indeed pretty madman

#

That sounds like a pretty complicated pipeline. How does the beautiful soup work?

#

Ah. I see

#

But yeah, the map search was a feature request from someone on Reddit when i posted the tool for early leveling items.

#

So i tried to implement it, still a little work left. Oh you did?

#

I see I'm missing the armour mod. Is that new? Hm

#

I guess the wiki isn't too up to date

#

That's a great source! Thanks

#

I hope you don't mind me making a tool similar to yours

#

I'll give you a shout-out on the github page

civic crane
#

just appeared on trade with 2 items listed > 1year. wiki says introduced in 1.3.0 templarLul

worthy cape
compact isle
civic crane
#

yeah, I'm not against that explicit searches for fractured and crafted, it's just odd that explicit stat appeared NOW

compact isle
#

we reindexed from the beginning again so it picked it up as something new

rapid pagoda
#

"sentinel combinations are all server side, so players can't reverse engineer it"

challenge accepted? ๐Ÿ˜‰

frank drift
#

new poorfishwife project

drifting merlin
#

sigh unzips

worthy cape
#

I don't like the hideout-affecting MTX, given that I'm still working on my hideout editor ๐Ÿ˜„

#

Starting to understand how things fit together again, hand-generated Tane's opaque material and half-arsed the lighting logic.

#

Might get away with a lot of cheating via the shader preprocessor, given how my experiments are going.

civic crane
#

The Unique Stash Tab search filter can now be used to search the modifiers on stored Unique Items.
probably only if you own item, otherwise need to store list of mods clientside marauderthinking

compact isle
#

stored Unique Items
ye

candid ridge
#

I wonder if xyzz will patch before league start

#

I assume http just needs to be changed to https

candid ridge
#

Is there something I can use in the meantime that does the same thing?

frank drift
#

hasn't been updated since 2018

#

think you're out of luck unless there's a fork

#

what does it do?

candid ridge
#

searches all your stash tabs/characters

#

procurement did the same thing back in the day, and i know of looty which does something similar but is a chrome extension

gilded tree
#

There was something similar... even the name was similar to Looty. It was written in Go and did the same thing, I can't find the repo. Maybe deleted? mhhh

lunar crypt
#

Canโ€™t you do that with exilence?

velvet fog
#

unique sentinel have different base item type name in press/video/website, ex: The Hollow-Eyed Skull has Ivory Stalker Sentinel and Ancient Stalker Sentinel.

primal schooner
#

is there any overlay with step by step / checkpoint system for leveling, similar to Questie for wow?

#

can you trigger something from an overlay app using text log from the client? (like talking to NPCs at certain points through the acts / leveling process | you emotes when you enter certain areas, etc )

frank drift
#

you can get area from client.txt, that's about it

#

the logic of keeping track of what step you're on just from area can be a bit complex

vestal sentinel
#

does POB work in windows 11? i just fresh reinstalled and lua errors i cant trace

oak estuary
#

There were some hiccups in earlier builds. What kind of error do you get?

vestal sentinel
#

fresh from fork

#

always shows on launch, randomly pops up time to time in open planner, wont let me check for an update either it seems button dead

primal schooner
#

can't seem to find it

worthy cape
# vestal sentinel

This reminds me of a previous issue where users had files that existed, could be opened, but could not be read from when trying to populate the build list...
Is your user profile or build directory on OneDrive or some other uncommon storage technology? If so, make sure that OneDrive is actually logged in and that files sync properly.

simple ravine
#

ooh, secrutiy gateway and switch in the same thing

#

definitely wanna get one of those

#

apparently there is a Pro version as well

#

yeah, I could put this on the wall in the hallway where my fiber modulator is

#

i cant really put my usg 4 pro there, because, yeah, it's loud as an airplane

#

but a wall mounted one, would in my opinion only be feasible if it's pretty quiet, or even fan-less

#

i'm thinking of replacing my fans to 40mm noctua fans

#

yeah, i was at the local computoring store, but they didn't have those, so have to order some online.. will let you know when i get to it

primal schooner
#

how do i find out what is outputed to client.txt?

rapid pagoda
#

by reading it? ๐Ÿ™‚

worthy cape
#

Either by yourself or leveraging one of the existing libraries to monitor it.

#

As for which data is logged to it, it varies over time as the client evolves.

gilded tree
#

Spoiler: he failed

simple ravine
#

I chucked it into a wardrobe, in the bottom, and soundproofed that part of it

#

that helped a lot

gilded tree
#

Yeah, totally.

He tried to kill all the sound tho but the airflow was really problematic after that. The rack was getting bigger and bigger and at the end he stopped ๐Ÿ˜„

warm adder
#

is there any way the find poe logo as svg form ?

civic crane
#

I doubt that it even exists, I think it's a rendered 3d model

worthy cape
#

IIRC, it's a boring 2D image these days, I forget where.

#

Your best bet is probably the press kit.

#

Current game file path for 3.17 is Art/2DArt/Logos/POELogoScarsOfTheAtlas.dds.

primal schooner
#

is there any public software out there that parses the client.txt file and creates an API you can access with other services?

#

also, is there any way to change / add what gets outputted into client.txt? like adding NPC speech, etc

#

I see that global chat shows up, and I have the option for 'Output Dialogue to Chat' checked, but it is not showing up in client.txt (whereas global messages are)

#

I'm assuming that means they just show up in the chat dialogue box in the client.

formal kraken
#

anyone got the gh repo with the tree data at hand?

#

nvm it's pinned

rapid pagoda
gloomy palm
#

Can anyone point me to the rough location in PoB where physical damage reduction from armor is calculated using the configured enemy physical damage?

#

I assume it uses some string concatenation -> variable name hack, as searching for enemyPhysicalDamage doesn't yield any results.

worthy cape
#

I think you want CalcDefence.lua at around line 1081.

#

Looked this up for another bug report in the past, there's indeed a whole lot of damageType.."DamageReduction" kind of constructs.

gloomy palm
#

I'll look into that part, thank you.

gloomy palm
#

Meh, it seems to go through too many modifiers before reaching the physical damage reduction calculations. Wouldn't be easy to change it, it seems.
Got it working.

I think I found a typo around line 1550 though.
Damage.ManaWhenHite = DamageIn.ManaWhenHit or 0 * speedUp

earnest goblet
#

Hey all, was wanting to get back into the development my fork of the Acquisition tool, and wasn't sure if there was much interest from others? I know that there were a few issues with it recently that should hopefully be resolved, but wasn't sure if there were any features that would be nice to have (especially if it's a feature that's only in premium tabs right now)? Otherwise I'm just going to be brainstorming for now, since I was sort of getting back into PoE itself right now.

https://github.com/testpushpleaseignore/acquisition

eager rivet
#

Anyone know if there is a mapping file for various id schemes for mods? 1 Added Passive Skill is Astonishing Affliction <> local_affliction_notable_astonishing_affliction <> AfflictionNotableAstonishingAffliction <> explicit.stat_2428334013 (trade)

civic crane
#

no, we don't know based on what data trade id is gnerated, so dumb text matching

eager rivet
rapid pagoda
#

and to connect some more dots: AfflictionNotableAstonishingAffliction is the id of a row in Mods.dat (and a ModType but that's probably not what you care about). the first (and only) stat applied by that mod is local_affliction_notable_astonishing_affliction.

eager rivet
#

Ah, that makes sense. One is the stat other is mod. And I can just use string matching to map the english text to trade id

rapid pagoda
#

yeah, the trade id may not be linked to the data rows in any usable way

#

converting from stat description strings to stats is, unfortunately, a bit of a "turn hamburger into cow" situation

#

you can try to match based on the stat descriptions but it's a lossy process

eager rivet
#

I got surprisingly far, my use case is limited with cluster notables so it isn't hard to match them. I am trying to calculate most profitable cluster base+harvest reforge combinations ๐Ÿ˜„

odd sail
#

@compact isle question regarding the latest teaser with the Witch Forbidden combo of Nine Lives - will the special node info of these nodes be included in the tree data (i.e., like for anoint-only nodes)? We are trying to figure out if we will have to special case things for PoB

compact isle
#

what a great question I'll find out

#

looks like the plan is to tease them over this week so we won't release them with pre-release tree data and no pre-release tree data this league because there are no changes aside from minor formatting

#

at the point of release you'll have .dat files anyway which is probably preferred over it being in the tree export?

rapid pagoda
#

I'm not sure if we actually have tooling to generate the passive tree JSON from game data files.

compact isle
#

it's not really related to the passive tree it's just a keyworded skill like others

hazy fiber
#

my guess is it wont be on tree becouse it doesnt have a place to be, nor an icon
PoB currently assumes they are on tree and the logic it uses is tree logic iirc

#

but we can force it on tree for PoBs purposes

#

and just give it a generic icon

compact isle
#

they don't have icon art so yeah you'll need to be a little creative

odd sail
#

yeah, we will have to put them on the tree to show players/users that it's allocated and allow them to see the DPS and eHP impact

#

there already exist tree nodes that can be hidden (e.g., cluster expansions), wonder if they can be used/abused

hazy fiber
#

I dont think wed need to hide them, treat them the same as the anoint only notables

rapid pagoda
#

I have to imagine there's going to be counterparts for other classes

hazy fiber
#

yeah one for each class

#

is what it sounded like

primal schooner
#

anybody here good w/ C# and interested in helping w/ a small project involving auto-splits for LiveSplit ?

compact isle
#

๐Ÿ‘€

worthy cape
#

What unholy and cool things does this newfangled thing do?
"Group by Seller" seems new.

civic crane
#

sort by highest price ScuffNote

worthy cape
#

That scratches the eternal itch of "I would like to know if a seller has all the things I'm out to buy" when grabbing maps for completion, a set of breachstones for an invitation, etc.

#

Trade message parsers are going to have fun tho...

#

Hi, I'd like to buy your 3 Sacrifice at Noon, 30 Sacrifice at Dawn, 3 Sacrifice at Dusk, 12 Sacrifice at Midnight for my 16 Chaos Orb in Standard.

#

There's nothing worse than knowing that someone you trade with might have the other components you want, but it's too risky to try to talk to them as you're very likely to run into language barriers and confusion, risking the whole trade ๐Ÿ˜„

compact isle
#

yeah that's the reason we have the language flags on that page (currently missing, fun!)

worthy cape
#

Is this something that's ready to share with others, or still in flux?

compact isle
#

the "legacy exchange engine" is powered by the regular consumer so it's still quite far behind which means comparing between them is not great atm

#

aside from that go for it

hazy fiber
#

seems to break when the values get too high for seller to fullfil trade, but gives a "bad" (as in no error) error message

#

as each slider is capped correctly to sells max, but not when grouped

young osprey
#

Here is this nice new toy. Oops, I broke it

compact isle
#

yeaaah hopefully I get a chance to improve the max stuff before 3.18 release

#

definitely on the radar templarSad

hazy fiber
#

if you atleast give error message instead of the blank message that would help

civic crane
#

meanwhile in legacy engine, 0s and infinity ๐Ÿ˜„

worthy cape
#

"hello, yes, I'd like to take you up on an infinite number of frags, plz"

civic crane
#

@compact isle should I switch to new api, or wait ~2 weeks from league start? hopefully you load tested it ๐Ÿ˜„

compact isle
#

it's a lot faster and less load on us to use the new one

#

but the old one should be fully backwards compatible with pre-3.17.4.4

civic crane
#

don't you confuse players with this button? compatibility on api level is good, but I dont see any reason as a player to use old engine

compact isle
#

in case it explodes we can switch it the legacy one to being the default

surreal oar
#

here's a quick and dirty table I made for easily looking at types of eldrich implicts you can get on bases =]

(it shows the value to be found when using an exceptional eldrich currency and it ignores the empowered near unique boss and near pinnacle boss versions of these mods)

formal kraken
#

Asking for Oauth login shortly before a league launch templarLul

compact isle
#

You're not alone it's the most popular time pepeW

formal kraken
#

Damn, I thought surely nobody does that before a league launch templarLul

velvet fog
drifting merlin
#

@compact isle quick question, on the atlas tree json the keystone frame url gives the passive skill tree keystone frame, is it possible to get the new one ? ๐Ÿ™‚

mortal bone
formal kraken
#

๐Ÿ˜ฎ is the 3.18 tree out?

worthy cape
#

Lots of yellow.

worthy cape
formal kraken
#

๐Ÿ˜ฎ even the git branch has it, totally missed it

worthy cape
formal kraken
#

thanks

#

damn I love the formatting of the news post

#

not gonna read it, but it looks nice templarLul

mortal bone
#

only the 3.18 atlas from what I can tell

worthy cape
#

Nine Lives etc. aren't in the passive skill tree per se so there's not much to update.

primal schooner
#

does anybody know of a site that does the atlas tree planning, but can save multiple layouts per single page (akin to the POB tree manager)? I thought I saw a website that did that recently on a video and I'm trying to find it again..

past merlin
#

I believe it was PathOfAtlas - but IDK if it's updated for 3.18 yet (edit: doesn't seem to be updated)

#

On a slightly related note, my atlas tree quick-view tool is updated for 3.18: https://atlas.omri.io/. You paste in your tree link (from the official website, or PathOfAtlas, or you can export the POE one from poeplanner) and it shows a visual breakdown of it. Great for looking at a bunch of builds at a glance

drifting merlin
#

I'm working on one that will allow that !

#

not yet like POB with multiple trees in one build, but one with save capabilities

#

but it's on my to-do list

primal schooner
#

Anybody know the dev / how to get a hold of the person who dev's Chaos Recipe Enhancer?

torpid parrot
primal schooner
#

if they don't publish a contact method, can you contact ppl through Github?

frank drift
#

@bright ridge is the maintainer I think

bright ridge
#

ye wassup

#

woah got thrown for a loop, thought this was TFT for a second

bright ridge
#

Also, unrelated to that conversation, how can I get the Tool Dev role?

hazy fiber
#

you use to just ask ferret for it, but hes gone now

#

I dont think anyones been made tooldev since

rapid pagoda
#

I think @worthy cape handles that now?

hazy fiber
#

nah zaos role is meaningless now isnt it?

dusk junco
#

hi all

pseudo ocean
#

hi

grave wren
#

@pulsar moat who manages tool Dev roles now?

pulsar moat
grave wren
#

Thanks for the insight templarthumbsup

worthy cape
frank drift
#

assistant to the regional manager

primal schooner
#

I chatted with Meatbox yesterday

primal schooner
frank drift
primal schooner
#

so no one has ever dropped a chaos before by killing a level 11 or less mob?

frank drift
#

correct

primal schooner
#

pretty sure that's not true.

frank drift
#

at least, not from standard drop mechanics

primal schooner
#

oh

#

hum

frank drift
#

league mechanics etc can bypass that of course

primal schooner
#

yeah

frank drift
#

strongboxes too potentially

simple ravine
#

strongboxes while dropping +2 level etc i presume

chrome topaz
#

is path of building not updating for 3.18?

carmine merlin
#

We are, just havenโ€™t released one yet

worthy cape
#

Torrent's up, not that it matters much.

hazy fog
velvet fog
#

torrent had Data, but no Sentinel*.dat

worthy cape
#

Ooh?

velvet fog
#

missing stat_descriptions.txt too

worthy cape
#

Nice to see that they've gone back to the old way of just removing some bundles, there's a fair number of Data/ files missing due to how some bundles were removed.

#

Changes in DAT sets in index:

-Data/Bloodlines.dat64
+Data/DroneBaseTypes.dat64
+Data/DroneTypes.dat64
+Data/ItemClassFlags.dat64
+Data/MapStashUniqueMapInfo.dat64
+Data/MavenJewelRadiusKeystones.dat64
+Data/MicrotransactionChargeVariations.dat64
+Data/MicrotransactionPlayerShieldVariations.dat64
+Data/SentinelCraftingCurrency.dat64
+Data/SentinelDroneInventoryLayout.dat64
+Data/SentinelPassives.dat64
+Data/SentinelPassiveStats.dat64
+Data/SentinelPassiveTypes.dat64
+Data/SentinelPowerExpLevels.dat64
+Data/SentinelStorageLayout.dat64
+Data/SentinelTaggedMonsterStats.dat64
+Data/TableCharge.dat64
-Data/UniqueMapInfo.dat64
#

@velvet fog Of those, SentinelPassives and SentinelPassiveTypes seems to extract fine.

formal kraken
past merlin
formal kraken
worthy cape
#

See channel history, Novynn mentioned that there wouldn't be a JSON because the passive skill tree is barely touched.

formal kraken
#

ah thanks, missed that then

worthy cape
#

In particular the answer was about pre-release information.

formal kraken
#

aight, Ill just use the 3.17 commits for 3.18

drifting merlin
civic crane
#

feelslagman

drifting merlin
#

really ? ๐Ÿ˜ฆ

#

i don't have issues on my side

civic crane
#

it's burning cpu

drifting merlin
#

i'll check

velvet fog
#

15% of my cpu

drifting merlin
#

there's a lot of wonky stuff I'm sure I can get some optimisations done

formal kraken
# drifting merlin pog it's alive: https://atlas-builder.app/

you're full blast rendering even if there are no interactions. You need to switch pixi to manually call update and only if there is an interaction with the canvas, something like this:

    private _tick(): void {
        const newTime = Date.now();
        let deltaTime = newTime - this._lastTick;
        this._lastTick = newTime;
        if (deltaTime < 0) {
            deltaTime = 0;
        }
        if (deltaTime > 1000) {
            deltaTime = 1000;
        }

        this.viewport.update(deltaTime);
        if (this._dirty || this.viewport.dirty) {
            this._app.render();
            this._dirty = this.viewport.dirty = false;
        }
        requestAnimationFrame(() => this._tick());
    }

Also performance seems pretty bad, I assume you recreate too many sprites on every update or your setup is very inefficient (e.g. arc masks may be an issue)

#

I've been there, in the end I got my tree to render at vsync speed (not atlas, normal tree)

#

but takes a bit to figure out the bottle necks

drifting merlin
#

I've just set it up and forgot about that

formal kraken
#

that's the JS heap

#

it really looks like you allocate textures/sprites every frame

#

otherwise looks good! Just the tooltips are a bit too big for my taste

#

also you might wanna grab the fontin font

simple ravine
worthy cape
#

nom nom nom

faint remnant
#

@bright ridge Hey, I think the just-released build bricked the app. At least for me it crashes on start. Got a stack trace in my windows errors if that helps

bright ridge
#

yeah i just swapped MSIs

#

gonna nnounce soon

faint remnant
#

Thanks! Was about to download VS2022

worthy cape
#

Scheduled patch time in 20 min.

formal kraken
#

I guess that's my signal to start looking for a build templarLul

grave wren
#
#

:p

formal kraken
#

Occultist ๐Ÿ˜ฎ

#

Isn't that usually a ranger build?

grave wren
#

nah the ranger cdr node was removed a while ago ๐Ÿ˜„

#

nec/occu or ascendant are your picks now

formal kraken
#

that's a sick build

frank drift
#

no reason to ever not play a witch

grave wren
#

only uncool for your fingers

formal kraken
#

Probably just gonna default to DD because I wanna play HC this league, but this looks actually fun with boom booms (profane bloom)

worthy cape
#

Why do I always get the urge to work on my tools way too late just as the league starts?

formal kraken
#

Same ๐Ÿ˜ฆ

grave wren
#

kinda glad i didnt have to touch @regal mural at all ๐Ÿ˜„

worthy cape
#

Not playing the game anymore tho, so there's still dev time \o/

#

Who knows, maybe this weekend I'll finally get around automating some stuff rather than searching bash history across several machines for commands to edit.

formal kraken
grave wren
#

or an ai that does the ctrl+r-ing

#

what could go wrong

worthy cape
#

That's probably half the things I need, serves mostly as a reminder of which gosh-darn VM I put things on now again.

formal kraken
#

delightful

#

I love the magic numbers everywhere

grave wren
#

time to dockerize it zao

#

it'll be fun

worthy cape
#

My infra is definitely not designed for containers anywhere, last time I tried Docker I became extremely sad as they didn't believe in working IPv6.

#

And of course these days their license shenanigans make me extremely vary of every touching them again.

#

I've been eyeing Hetzner's recent dedicated server offerings, they seem way nicer these days than when I tried using them back in 2011.

#

For just five dรถner meals a month I could get a nice chonk of a machine with 64 gigs of RAM, a couple of terabytes of disk and unlimited gigabit traffic.

formal kraken
#

Hetzner was always good

#

but yeah the dedicated stuff was pretty expensive, but the vps'es were pretty decent and affordable

worthy cape
#

Their stability was abysmal back then in my datacenter on the virtual machines, I had a fractional nine of uptime.

formal kraken
#

How much is 1 Dรถner where you're from?

worthy cape
#

Support and resources were mostly in German so I was feeling extremely hosed.

formal kraken
#

Ah, yeah that was never an issue for me (as a German)

worthy cape
#

Depends, but around 8.6 EUR/dรถner.

formal kraken
#

wow

#

we still have the 3-4โ‚ฌ Dรถner's here

worthy cape
#

Not sure if the cited prices are with or without the 25% VAT, but 40-45 EUR/mo for a dedi.

grave wren
#

i pay 6.50-7 here if i want the good stuff

worthy cape
#

This being a full meal with fries, soda, salad.

formal kraken
#

Kimsufi was also pretty good to me

grave wren
#

also germany

worthy cape
#

Not that many stands and hole-in-the-wall places, kind of falls under pizzerias here.

formal kraken
grave wren
#

yes

worthy cape
#

Anyone else casually refreshing SteamDB? ๐Ÿ˜„

formal kraken
#

or like an actual restaurant

#

jesus

#

what city?

grave wren
#

rural south west

formal kraken
#

damn, rural Bavaria and Vienna still have the good old 3-4โ‚ฌ Dรถners with good quality

grave wren
#

check if its dรถner and not just "drehspieรŸ" :p

worthy cape
#

My local dudes make a quite nice one in sammun bread with veal, parsley, sumac and some yoghurt garlic sauce.
Lightyears ahead of the default kebab.

grave wren
#

mine adds rucola and some other goodies - same for me

#

gladly paying for the quality

formal kraken
#

ever since covid started I havent had enough Dรถner ๐Ÿ˜ฆ

worthy cape
#

I still WFH so I pop by once a week or so and pick up two meals, one for that day and one to reheat the next day.

#

On PoE - I desperately need to update my dataset as my asset viewer and hideout editor still runs on 3.16.3 ๐Ÿ˜„

#

Made quite some progress in the last few weeks on shader codegen from materials, just a bit more graph wrangling and I can start generate shaders similar to the previous hand-ported ones.

formal kraken
#

your hideout viewer looks amazing, any plans to develop it into a bigger tool?

worthy cape
#

Bah, that's an old screenshot, missing the green glow from Tane's helmet.

worthy cape
#

I'm just one dude tho and there's so much PoE stuff that I haven't figured out yet.

#

The big things missing currently are:

  • no idea how many subtiles encode height and walkability - this is needed for positioning decorations;
  • picking the correct tiles for rooms and filling in a level requires manual choice in many situations;
  • placing rooms at the correct place in the level and relating decoration locations to that.
#

And of course, all of the actual editor logic.

#

Been working for the last few months on the three mesh types and their materials, as well as layout logic and the meaning of the tile and room formats.

#

Motivation is a bit hampered by that I don't ever know if I can actually release this to people as it has some kind of mandatory dependencies on specific versions of game data to be meaningful.

formal kraken
#

too many breaking changes in the game files?

worthy cape
#

Apart from being told that I may not touch an user's game files, the unknown version of them is a big problem.

#

Formats evolve over time and new content often requires engine functionality that I may not have support for.
DAT files can change in the middle of a league, leaving a crucial part of data lookup broken.

#

Without bringing my own copies of files, I can't lock the tool down to a specific game version as there may never have been that version on the system.

#

@velvet fog Steam patch up on DB.

civic crane
#

fixing schema for every dat update

odd sail
#

"shield charge" renamed to "table charge" in enchantment DAT?

rapid pagoda
#

what the

odd sail
#

they did add a TableCharge.dat

rapid pagoda
#

"Charges at a targeted location or enemy, picking up a table along the way and repeatedly doing cutlery damage to enemies in a small area in front of you."

worthy cape
#

Only available if wearing cloth armour.

hazy fog
#

@velvet fog why do the forbidden jewels list by ascendancy and not by class

worthy cape
#

They each have an ascendancy key, which happens to be one of the ones of each class.

#

Witch is keyed as Necro, Scion as Ascendant, whatever the base for Champion is as Champion.

civic crane
#

bruh, let me report bug ๐Ÿ˜…

oak estuary
#

Can't ping Novynn on release day? ๐Ÿ˜„

rapid pagoda
#

Anyone working on schemas yet, or focusing on the game? ๐Ÿ™‚

compact isle
#

already fixing ๐Ÿ‘Œ

compact isle
rapid pagoda
#

ha ha ha holy shit biodiff is amazing

worthy cape
#

I never managed to get it to behave well with my types of input files

rapid pagoda
#

it doesn't try to align content by default, you have to hit f3 to make it do that

#

(in case you missed that like I did at first)

long sky
#

Always find it interesting looking at traffic on release day

compact isle
formal kraken
#

can I join?

long sky
velvet fog
lusty musk
#

pretty big regression: the whisper button gets hidden behind the next item on the trade site when using a vertical monitor and the compact two-column layout

#

I can't seem to ping novynn I hope he sees it

worthy cape
#

Heh, I even get some wrapping maximized at 150% desktop DPI if names are long enough.

balmy tapir
#

hey guys, sorry for posting it here [did not find a better place to ask for help], but I just updated my PoE and the moment I launch PoE [the game opens, screen goes black], the process is instantly shut down... did anyone have the same problem? if so, how can I fix it? :/

worthy cape
#

Sorry mate, can't help you. I recommend mailing techsupport or keeping an eye open on the bug forum.

balmy tapir
#

Okay thank you!

worthy cape
#

Only related bug I've had is if I click too quick to skip the logo it crashes out on the main menu, but that's been for a good league now.

#

Verify integrity of your Steam install of the game or run PackCheck on the Standalone, they'll tell you to do that.

balmy tapir
#

Oh great!

#

Thank you a lot for your time!

#

I'll do that, if it does not work i'll contact tech support!

worthy cape
primal schooner
#

Anybody got time to help me w/ a super simple Overlay for POE ?

timber path
#

I think this stat is "broken": if I'm not mistaken, you're supposed to be able to select the keystone from a drop-down ๐Ÿค”

civic crane
#

clear cache

odd sail
#

There is two .. chance to suppress spell damage on trade site. First one doesn't work.

#

@compact isle ^

knotty patio
#

Anyone knows why awakened poe trade gives this error? Error: Temporarily Unavailable; Please use the New Exchange Engine

worthy cape
#

Trade website has gotten a fancy new engine for bulk exchange with cool features like grouping listings if you look for more than one thing at once.

frank drift
#

all tools using the old bulk engine are broken now

knotty patio
#

ah F, cause I was searching how to use new engine in settings, but nvm then

frank drift
#

not just APT

knotty patio
#

is there any good trade tool like awakening? or just wait

frank drift
#

wait

knotty patio
#

f

primal schooner
#

what is the new exchange engine endpoint?

worthy cape
#

There's an "engine": "new" (or "legacy") request field in endpoints like https://www.pathofexile.com/api/trade/exchange/Sentinel

#

If you go "legacy" it's going to 503 your face.

#
{"error":{"code":7,"message":"Temporarily Unavailable; Please use the New Exchange Engine"}}
late schooner
#

,"enigine":"new"

#

right? got it

worthy cape
#

The responses probably differ in some way which might make it Fun to implement in third party tooling.

#

Like there being a an array with offers that support the new "collapse": true grouping functionality.

#

(got no idea how the old API looked and can't make requests to compare these days ๐Ÿ˜„ )

frank drift
#

recombinator shenanigans?

worthy cape
#

For sentinels two rares can combine into an unique sentinel according to the league splash images.

#

Maybe a rare outcome of items is something similar?

#

Or recombinators?

#

I know, just wanted to link the screenshot I alluded to.

#

So maybe something sneaky hiding behind "Sometimes, the resultant item is modified unpredictably"?

#

Heh, that Windripper shows up in the main search dropdown now on trade, I guess that's populated with everything that has been seen.

#

So say it's not recombination - what kind of drop sources could there be for such perversions?

#

Uberยฒ encounters, some weird keystone?

#

Or some weird glitch?

#

(I have no idea about the league mechanics, I don't play)

#

My reason is thankfully not league-related, it's just this body of mine ๐Ÿ˜„

#

Something weird with Stalker/Pandemonium rewards I guess, but still, weird.

cosmic saffron
#

usually those are royale bases leaking through

worthy cape
#

ooh, that makes some sense

velvet fog
#

error base for some uniques

minor palm
# velvet fog https://cdn.discordapp.com/attachments/420356104355184650/976032745891438662/unk...

Do you have a list of all unexpected ones, chuan? I know of 3 total currently:

  • the 2 which แš›แšŽแšแš…แšœ posted above: Windripper Long Bow, Lightbane Raiment Chainmail Vest;
  • and the 3rd being Relic of the Pact Carved Wand (two instances).

Relic of the Pact shouldn't exist at all on Sentinel SC (Ultimatum-specific), but it's likewise on the wrong basetype (Carved Wand instead of the expected Spiraled Wand): https://www.pathofexile.com/trade/search/Sentinel/JbyRVdWFl

velvet fog
#

same as your post

long sky
#

Only 5c for that? Seller probably doesnโ€™t realise what they have

minor palm
#

Thanks so much for the additional example!

The only historical example of this occurring of which I'm aware is Aurseize Fishscale Gauntlets (should be: Steelscale Gauntlets). We've never found one that actually exists, but it's still searchable like that on /trade. This is almost certainly not the same bug since the unexpected Aurseize Fishscale Gauntlets occurred long ago, but it's very interesting to see a modern bug producing a similar unexpected basetype result.

frank drift
#

not necessarily a bug, could be intended

#

but probably a bug

minor palm
#

Right, I hear you and definitely agree that it could in theory be a crazy undocumented stealth feature of "clever use of game mechanics" -- but Relic of the Pact existing is way unexpected (given that it's both Ultimatum-exclusive and on the wrong basetype too).

grave wren
#

Do we have a list of royale unique items?

haughty steppe
#

How do you enable pob doing math in the background again?

hazy fiber
#

need to use old exe

worthy cape
#

Vsync/sleep stuff?

hazy fiber
#

yeah it sleeps main thread while alt tabbed doesnt it?

#

I think sorting and download still work when tabbed out as they are on separate threads, and I know we had some discussion on instead fps limiting it in background instead

worthy cape
#

Last I looked there's some conditionals both on being visible and having mouse focus, not sure I ever followed the logic fully.

hazy fiber
#

I think the visible logic broke recently hence the reports of black screen in background

#

but not sure, never looked at it myself

worthy cape
#

Hmm, that kind of makes some sense.

hazy fog
#

hello programmers you may get a chuckle from this

#

we [at my work] just got a request for our letter we send in the following form
translated to ASCII on a data disc and mailed to them

worthy cape
#

Aaw, no EBCDIC.

hazy fog
#

yes I am aware we are being trolled

#

unfortunately I think we have to legally do it KEKW

simple ravine
#

send it on a zip drive or something obscure

#

it's still a disc of sorts

hazy fog
#

how does one even populate the disc ascii isn't a language

rain pasture
#

is there an API available for ninja?

#

do you have a sample URI for essences?

#

cheers~

#

Chrome's "type" column is the much less useful "fetch" as opposed to "json"

#

it's not going to happen, Gretchen

lunar crypt
frank drift
#

dropped from "eldrich mobs drop unique items" from searing exarch altar

#

aha

#

some dev krangled the implementation of that I guess

rapid pagoda
#

game took "unique items" much too literally

velvet fog
hazy fiber
#

thats the funniest one so far, thats a jewel, on a body armour

velvet fog
#

Error base type summary

Unknown:

  • Deerstalker Rawhide Boots (1 in store)
  • Hrimsorrow Rawhide Gloves
  • Magna Eclipsis Rawhide Tower Shield
  • Reckless Defence Lacquered Garb
    Space before name:
  • The Torturer
    16 Royale Uniques:
  • https://poedb.tw/us/Royale (The Royale prefix was added to avoid affecting the original unique display)
tender cloak
#

In case it wasn't in notes or clear from /trade, all the royals were deleted (can confirm, the divinarius was mine)

grave wren
#

Aw

frank drift
#

wild guess, maybe some internal testing list of uniques was/is being referenced instead of the normal list

hazy fiber
#

will probs disappear as well, next time they log in

velvet fog
#

Relic of the Pact Carved Wand disappeared

dull laurel
#

Is there a place to report bugs with the trade site?

velvet fog
fickle yew
fickle yew
lunar crypt
#

yep, it was

#

let me see if i can find the link

#

there you go

fickle yew
#

Thanks!

raven gust
#

Hear me out, mobfilter

Tool would allow you to select mods or Set up combos that are rippy and put a death skull or tombstond over their head

#

Most are hasted or somthing anyways so with normal human reflexes its hard to see the mods before you rip

worthy cape
#

Fun idea, but not for here as tools can't do anything around this.

primal schooner
#

what's the name of the overlay tool that assists with trade help, like having a button for PMing ppl that send you trade request while in a map, etc

frank drift
primal schooner
#

Anybody familiar with Overlay / client.txt interaction interested in helping me w/ some guidance on a small project? PM me

velvet fog
#

@compact isle garena taiwan public-stash-api return english content, all website item are english too. can't use chinese in channel.

compact isle
#

yep they're working on it

primal schooner
#

anyone know of any trade helper overlays that are open source?

velvet fog
#
GitHub

:heavy_dollar_sign: :hammer: Path of Exile trading app for price checking - GitHub - SnosMe/awakened-poe-trade: Path of Exile trading app for price checking

GitHub

An Overlay for Path of Exile. Built with Angular. Contribute to PoE-Overlay-Community/PoE-Overlay-Community-Fork development by creating an account on GitHub.

primal schooner
#

do either of these assist with PMs ?

#

i'm looking for the one(s) that lets you respond to ppl that message you from trade site

#

is poe overlay a platform, or a specific tool like awakened?

frank drift
worthy cape
#

Not sure what ones there are since MercuryTrade.

primal schooner
#

deprecated 2020 ๐Ÿ˜•

worthy cape
#

It died off for assorted reasons, but that doesn't stop the actual overlay for having meaning.

#

(Java tho ๐Ÿ˜› )

primal schooner
#

yeah

drowsy narwhal
frank drift
#

actually there's a community fork of MercuryTrade too

#

still actively developed

#

I use it

#

some features like timers aren't easy to get all in one tool

primal schooner
#

yeah, i don't need any timers

#

just basically client.txt triggers and PM'ing

kindred sphinx
#

is there a tool/program that makes a sound notification when your flask effect is over

#

oh my god I asked this in global and..... Is auto flask macroing really that common?

#

I just want a notification

civic crane
#

Flaskium Instilling Orb Flaskium -> Used when Charges reach full

worthy cape
#

Thereโ€™s no way for a tool to tell whether a flask has expired.

#

The best you can do is to listen for keypresses and start a timer of known duration but that doesnโ€™t handle them running out from other reasons or queuing.

kindred sphinx
#

oh I thought I could use a color detector or something but im not sure if you guys use like a tool base or something

worthy cape
#

Continuous OCR goes against ToU I believe.

kindred sphinx
#

damn it

#

guess ill just spam "flask alerts" in chat when they interview chris wilson

worthy cape
#

Hrm, might be mixing it up with not being allowed to perform actions based on screen reading.

kindred sphinx
#

yes please

worthy cape
#

Well, it kind of falls under the โ€œinteract with gameโ€ forbidding section I guess.

#

In any way Iโ€™m not aware of any framework commonly used to do so performantly.

#

Adapt your play style or lobby in proper venues for notification onslaught ๐Ÿ˜„

frank drift
#

anything beyond that mostly falls afoul of TOS

kindred sphinx
frank drift
kindred sphinx
#

Thanks!!

terse ibex
#

anyone having issues with awakened poe trade? it's not showing the little icons for me when ppl whisper me for trades

worthy cape
#

Iโ€™m not aware of any such feature in APT. Are you perhaps mixing it up with another tool?

terse ibex
#

hmm i thought it was apt

#

it's the small clickable icon that appears at the bottom and clicking it innvites them to party and then trades them on second click

drowsy narwhal
#

that should be poe lurker

terse ibex
#

ohhh right yeah thanks

civic crane
#

@compact isle any hint why query works through api (id: 9XL4EMmuK) but fails when opening in browser "Failed to load search state. The search is no longer valid."

#

oh, it's loading now, I guess some eventual consistency is on backend ๐Ÿฅฒ

snow whale
civic crane
#

@snow whale because they are cached by CDN, and the point in time at which the cache was made affects prices. (here 22 min diff)

snow whale
#

ah, that makes sense. also seems potentially problematic :\

#

it also explains why I get two different prices when I keep making the same request ๐Ÿ™‚

snow whale
civic crane
#

this is more like poe.ninja works, and it seems to not be critical to rasmus rn.
Unlike poedb poe.ninja gets item info only from public stash tabs and not from game files. Since Heist gives you lvl 16 gems you see them in page too

primal schooner
#

Does Viktor (Exilence Next) peruse this channel?

simple ravine
#

I believe I've seen him around

oak estuary
#

They have their own discord too

covert perch
#

Any way to get a complete list of AtlasPositions?

frank drift
#

it is constant, at least for jewels (exceptional) and jewelry (grand)

#

I believer greater and lesser is also constant, but never paid attention to specifics

#

might be the tier of the base

#

or just the type

#

it would definitely be nice to exclude rings/amulets since they share currency with belts