#tooldev-general

1 messages · Page 125 of 1

rapid pagoda
#

Right -- not "we are in trouble" legal issues, but "we want to avoid getting in trouble" legal issues. Implementing OAuth means sharing data; sharing data is legally complicated in regions with strong privacy protections like EU, so it's important to get it right

#

(this is conjectural but would be very surprised if that isn't what they mean)

prime wasp
#

is there something screwed up with websockets since yesterday?

#

unpriced items won't show up at all through websockets, but show up if you manually refresh the trade page and click the button to sort by recent

prime wasp
#

as an example

primal schooner
frank drift
tranquil vault
#

Is the poemap.live dev here?

wind garden
#

man it's punishing to misprice something with a 30min delay

frank drift
primal schooner
#

Anybody here good enough to dev a companion overlap app that'll connect to a 3rd party site API, and interested in helping / getting paid?

prime wasp
#

@compact isle could you read my msg here: #tooldev-general message

seems to be the case ~36 hrs later, apparently nobody is noticing the issue as i can't seem to find anyone else complaining about it or any information about what happened

chrome topaz
#

it's weekend my dudes

worthy cape
#

Aaw, thanks for reminding me it's soon over 😄

#

I'm still struggling to untangle the mess of materials and parsing the first part of declarations and fragments.

#

I'm kind of needing to write a preprocessor now 😦

lean phoenix
#

And I still waiting for new category item filters developers 😉 someone make this ?

frank drift
#

no

worthy cape
#

FRAGMENT can have macro x, DECLARATIONS can have #define x y, they all can have #ifdef, #else, #endif etc. Their code payloads can also use the preprocessor. There's also include x.

lean phoenix
#

or channel more accurate...

worthy cape
#

So I guess I'm going to have to topologically sort the nodes, pull in things they depend on recursively but ensure that they're not duplicated, gather uniform and handle macros as I go, and pray that the resulting source code is remotely legal HLSL...

#

Guess who didn't pay much attention in parser class and didn't get to take compilers?

frank drift
#

I tried to take a graduate compiler class as a senior

#

withdrew after 3 days

worthy cape
#

Maybe I should parse fmt/smd/etc. for a while and let the brain rest for some day when I have spare cycles.

lean phoenix
worthy cape
#

@lean phoenix I'm talking about the reading and rendering the materials and effects for the game assets. I don't have any opinion on your filter stuff and haven't you already gotten a statement on it?

lean phoenix
#

yes im understand Ok be in peace...

#

You doing good job, good work, im off ....

mellow ice
#

any admin about to help someone join?

rapid pagoda
#

help someone join what?

prime wasp
#

lmao

minor charm
prime wasp
#

unless they changed that for websockets too specifically like 2 days ago, no

#

idk

#

it wasn't a problem until 2 days ago

#

his post is on the 17th

minor charm
#

I see

prime wasp
#

yeah even if i generate a new trade identifier with sale type: any

#

the unpriced items won't show up

#

only listed ones Thonkang

broken cloud
#

If I have 0 saviour drop in 78 Sirus kills, is it possible to calculate an upper bound on the saviour drop rate?

#

I have a vague memory of this from statistics class, but I forget what it's called

rapid pagoda
#

nope, because the drops are all uncorrelated

#

also fwiw there was a bug for a while which made sirus not drop items under some conditions

vague aurora
#

anyone knows working method to bypass cloudflare bot protection?

civic crane
#

yes, by changing IP 🙂 (or complete captcha every 10 min)

vague aurora
#

Na, hes putting me into the javascript challenge.. but puppeteer and so on does not solve it

#

the "checking your browser" thing

worthy cape
#

Are you trying to run a full browser headless, or are you writing a standalone tool?

vague aurora
#

i try to write a standalone tool

worthy cape
#

Make sure you're providing an user agent identifying your tool with contact information.

vague aurora
#

Any syntax to fulfill?

worthy cape
#

Don't think so, just something like tool/version (by @handle) or something so that it can be identified and they can reach you if there's some reason to.

#

Anything not the standard user-agent from your HTTP library is probably going to be an improvement, but it has been requested that if you make a tool you should avoid obfuscating it and provide some info.

subtle gyro
#

@vague aurora you’ll find yourself IP banned if you don’t fix your user agent and keep failing JS challenges.

regal edge
#

Does live searching unpriced items work for anyone here? It was working like 2-3 days ago and I suddenly get 0 results for live alerts, however if I do a static search I can see there are TONS of results that is present since I started the live search

regal edge
#

ah okay, so im not the only one who has noticed this

haughty cradle
#

Anyone have any experience doing analysis on the dmp files caught during crashes?

#

I can't play the game on my laptop without using second monitor 😦 - I have to plug in second monitor just to play the game for some weird reason

worthy cape
#

Not too much use without symbols.

wind garden
#

man, the official trade site is behind at least 4 minutes

primal schooner
#

Anybody interested in helping/getting paid for dev'ing a very small overlay? pm me

frank drift
wind garden
#

I'd agree if it were the weekend

#

but things usually get fixed when GGG gets back in the office

#

except they haven't been fixed

regal edge
#

yeah, this has got to be the worst league in recent memory regarding trade site interactions

wind garden
#

need a live search for currency trades now because just doing a search is worthless. Everything sold already

white cave
#

for poe ninja api is sparkline the last 7 day trend?

civic crane
#

yes

white cave
#

thx

wind garden
#

it seems the bulk trade screen is able to figure it out, but if i search for orb of alteration, i get results in stacks that are priced at 0 chaos

#

i figured it was just the website rounding down, but it comes across in the json as "~b/o chaos"

regal edge
#

something is really wrong w/ trade again, getting msgs for things i sold like 30mins ago

civic crane
wind garden
#

ya, but that's what's missing

#

the x/y format isn't getting sent over the json

#

only bulk page seems to be able to see it

#

"note": "~price chaos"

#
"price": {
    "type": "~price",
    "amount": 0,
    "currency": "chaos"
}  
frank drift
#

yes it's bulk only

#

I think originally to discourage fraction wars with trade pricing

wind garden
#

seems like a mistake in hindsight

#

admittedly it's only a problem when the trade site is delayed, making the bulk page unusable

civic crane
#

Don't think you want to get whispers buying 1 Divine, when you want to sell at least 5 in bulk

wind garden
#

that's only an issue with the whisper button

#

they could easily have had the whisper button round down to 0 like it does today but maintained the original data in the json

#

but instead they just omitted it entirely from the json and had the button treat "blank" as a 0

#

gonna go out on a limb and assume javascript has a math.round function

lusty musk
#

Will the stash API still be available for 'private use' after OAuth is implemented? E.g. in the past I've done market analysis on PoE from the stash river, and I'm interested in attempting another such project. However if the API goes approve-only and my use (which isn't for a community tool, at least not initially) isn't approved, the effort would be wasted if the public API then goes dark.

sonic gull
worthy cape
#

You probably want the URL that includes /us/

#
sonic gull
#

ahhh thanks xD

regal edge
#

does Novynn or any of the other GGG folks check here?

worthy cape
#

It’s been a long weekend, and there’s been responses to similar types of reports before on the forums, so maybe try there too?

primal schooner
#

Looking for someone who can dev a small companion overlay (For 💰 or 👍 , your choice). PM me!

prime wasp
#

wooooooo the unpriced items livesearch bug got fixed

regal edge
#

praise toucan

oak estuary
#

How did we find the damage numbers for The Black Cane/Phantasmal Might? I can't find it anywhere in the GGPK, but somehow the wiki has numbers

hazy fiber
#

either shows ingame or we tested it iirc

grave wren
#

GET /nap
Good work!

worthy cape
grave wren
#

When will you provide hideout printouts in 3d?

worthy cape
#

2025

#

It's kind of odd, the tail of the file has a separate square-ish mesh for the ground with a different vertex format.

#

As for 3D printing, given how unwatertight these meshes are, it's going to need some preprocessing 😄

worthy cape
#

Only really figured out most of version 6 too, current is probably 7.

#

It doesn’t help that my 010 keeps crashing on my templates and scripts.

worthy cape
#

Regular vertices have three floats (pos) and twelve bytes that I have not figured out what they are yet. Squinting they may be groups of three bytes encoding TBN and a colour, but can't quite tell.

worthy cape
#

Not sure if the inputoutput fragment can help there.

#

Right now I've got a TGM.bt template for parsing TGMs, and a 010 script to write an .obj file right out from the template variables, to load into the Windows "3D Viewer" ^_^

gusty tapir
#

Hey, can someone tell me if I understood the public stash api correctly? My understanding would be: "/api/public-stash-tabs shows latest changes made to stashes. Only changes are listed.
?id=123 will show changes on Point A, ?id=456 will show changes on Point B, but will contain no stashes of Point A. next_change_id of Point B points to Point C.
If one of the stashes of Point A changes in Point D, stashes in Point A will be updated and the next_stash_id in Point A points to Point D."

worthy cape
#

Note that there's no changes, there's just full stash tabs with the current state.

#

If you follow the chain of next_change_id you may not see the same sequence of stash contents as someone else would, as future changes to the contents of a stash may obsolete earlier occurences of it.

gusty tapir
gusty tapir
worthy cape
#

Depends on how one interprets your last message.

#

An old change ID will not contain future state, it only contains state that was valid at that point.

#

Some of which may not be obtainable anymore, as there's future change that obsoletes it.

#

That is, if you're following the river to the end, you'll have an accurate image of the state of stashes, but you may not have seen all the intermediary changes along the way.

gusty tapir
#

Hmm... okay. Only question would be the definition of state. Like I request the "newest" change id. What data will I get, a list of all stashes, a list of all changes to the stash id before or what exactly?

worthy cape
#

Stash tabs will appear in the river if they have had a change happen to them, like an item move, item alteration, price change, etc.

#

A stash tab appears as a whole with all its contents, there's no change information.

#

Given a change ID, you get the next set of stash tabs in the river.

#

If you're at the very front, that set is empty.

#

If you're behind the front, you get some and may use the next_change_id to iterate from there.

gusty tapir
#

Yea, I did not expect change information, with change I meant the stash will appear in the river again if it has been altered in any way and it will be removed from the old change id.

worthy cape
#

Yep.

gusty tapir
#

Great. I know it's not very complex but I actually never saw such a data flow ^^.

primal schooner
#

Anybody here either interested in helping/getting paid to build a small companion overlay or can point me in the direction of some documentation on how?

frank drift
primal schooner
#

thanks

primal schooner
#

Anybody here work with Joomla Regularly?

pseudo ocean
#

guys i dunno if it is correct chat to ask this

#

but i play wc3 reforged and what i like most of it is map making

#

coz i have ideas for great maps

#

i was wondering

#

is it possible to make something like the hideout tools

#

but for maps

#

where people can create maps

#

and best maps

#

are actually integrated in the game

#

🙂

violet path
#

there's nothing like that for poe, no, and I don't think ggg has moved or said they plan to move to player-generated layouts or designs for any areas

frank drift
#

they did player designed maps waaaay back when, that's what most of the older unique maps are

#

but I don't think it was something they wanted to do again in the future

pseudo ocean
#

i see

#

what about more in depth hideout system

#

like

#

hideout wars

#

😛

violet path
#

i think those were much less player designed with some map creation tool, and more based on player requests like most unique items, yeah?

#

but same point anyway, not lookin' like a thing

#

there are hideout showcases, im not sure how intense the desire in the community is for some kind of hideout wars thing to happen. should try it

worthy cape
#

The best you’re going to get is probably cool external tools like what I’m hacking on to make regular hideouts, but less painful.

#

Not sure what a “hideout war” is.

#

Good news btw, my TGM parser gets the structure of all existing current TGMs right it seems.

#

Haven’t checked if I’m missing some tailing data but it doesn’t explode getting all that I expect at least.

#

Smells kind of like a FMT but with a bit of ground cover mesh at the bottom, not quite sure why it’s separate.

#

Vertex format for the tail is larger with v7 of the format, making it as big as the regular vertices.

#

Remind me to document this some day 😉

rapid pagoda
#

amusing discovery of the now: Adiyah is internally identified as the "Driver"

frank drift
#

makes sense

fading pilot
#

Wanted to thank the dev team for sending me this! Probably going to frame it on the wall over my screen.

It is a little hard to make out on the picture, but I am pretty sure someone spilled coffee on it - tough it smells funny... kidding

wind garden
#

why hasn't there been any update on the trade site delay? It's been over a week and nothing has been communicated.

#

asking rhetorically, don't expect anyone to know the answer to that

worthy cape
#

There are no delays in Ba Sing Se.

civic crane
#

What? Is there something left still not supporting utf8

worthy cape
#

Global chat whenever I try copying things from poedb 😄

civic crane
#

the real Apostrophe, what actually must be used by everyone, not a pseudo single quote 🙂

oak estuary
pseudo ocean
worthy cape
#

Maybe there's a change in how lazy things are loaded, or maybe there's been a change in the TamperMonkey implementation or underlying browser?

bitter hill
digital parrot
#

hello there. I am searching for data that tell what the odds of a prefix/suffix are.
Are the JSON files of brather1ng/RePoE such a thing? If yes, where is the data? I can't find it.

worthy cape
#

poedb has the values so it's assumedly obtainable in some table somewhere, but I've got no idea which nor if RePoE has it.

digital parrot
#

you mean I can access (e.g. via API) or get a database dump from poedb ?

worthy cape
#

I mean that if PoEDB (and Craft of Exile) has them, they are probably in DAT files in the game packs.

#

They seem to be in data/mods.json in RePoE.

civic crane
worthy cape
#

See the spawn_weights array.

digital parrot
#

Me: *clicking through every JSON file reading it while there is a docs folder.
Me dumdum

worthy cape
#

There's docs? 😄

pseudo ocean
#

is there any way to differentiate hybrid mods from single stat mods in the item data you get from CTRL-C in-game?

carmine merlin
#

not 100% of the time afaik

violet path
#

sending off my hourly email asking ggg to implement it

pseudo ocean
#

yeah the first few rares i looked at with hybrid/double stat mods were all edge cases where you couldn't tell, all depends on the iLvl and mod ranges, which is annoying for what i want to do

frank drift
#

people have been asking as long as the ctrl+c functionality has existed yeah

#

there's no reason why it shouldn't copy the extended mod info, no one actually uses the ctrl+c as human-readable info

primal schooner
#

is there / where's the documentation on interacting with the client?

worthy cape
#

There is no way of interacting with the client.

primal schooner
#

specifically w/ copying/pasting to chat

worthy cape
#

You may read client.txt, you may perform one specific server action per user-initiated action.

#

You may not inject overlays or anything into the executable.

primal schooner
#

just trying to have an overlay paste & send a formatted response

#

pretty sure other overlays / apps do this already

worthy cape
#

Which is why most acceptable tools are running as separate windows in windowed mode, obscuring parts of the window and being invoked on user-initiated actions.

#

Listening globally for hotkeys.

#

Send an Enter, send a Ctrl-V, send an Enter.

#

Pray the user is in the right modality 😄

primal schooner
#

so, only by keystroke, no api

#

kk

#

lame but figures

#

is that how all the trade reply enabled overlays do it?

worthy cape
#

Pretty much.

primal schooner
#

kk

primal schooner
#

would I use /api/data/CurrencyOverview (poe.ninja) endpoint to get the relative cost of Exalteds in Chaos?

primal schooner
#

anybody know the type string identifier for exalted orbs? (poe.ninja API)

#

how come 'Exalted Orb' gets network error in swagger?

#

what's the type you are using for that request?

#

looks like the start of 'Currency'

#

would it be possible to just paste the endpoint and parameters you are using to generate that JSON?

#

nvm i htink i got it

#

yeah i got the endpoint working in postman

#

i think there's something wrong w/ the swagger page

summer grove
#

Hi ! I'm currently starting an desktop app to track the currency farming during a league.
The idea is to get the currency premium stash of a player, and analyse day by day how many currency has been used / farm to generate graphs.
As the application needs to access to the player stash i would like to know if they're is an OAuth2 available on pathofexile.com ? I've seen that poemap used an OAuth2 authentication but i can't find any documentation about it.

worthy cape
#

@summer grove Hi! There's a pin here about how to contact someone for oauth stuff.

#

You could probably look at Exilence Next source to see how they deal with the auth and stash access, but I would assume they're using the same old API as everyone else once authed.

#

General rollout of oauth is on the horizon and currently stuck in a bit of a necessary legal mire to ensure that all the data processing junk is done right.

summer grove
gusty tapir
#

Hey, so I've wondered how the "Weapon filters - Damage" value is calculated on the official PoE trading website. It's pretty straightforward for only physical damage. The Damage value just needs to be in-between the max and min. But if the weapon also has elemental damage, I don't really understand how the search is calculated there. For example, 53-98 pDamage, 1-600 eDamage, search for 391 damage you still get that item, search for 392 damage you will not get it. Does someone have a clue on this? (I'm asking because I'm currently also making a item search for a different tool and want to calculate those values accurately, DPS and others are also pretty easy.)

worthy cape
#

Stat filters for ranges in general match against the average value, not sure how that one is in particular.

gusty tapir
#

Hmm, yea I tried something like ((1+600)/2)+ ((53+93)/2) like it is for DPS but I get nowhere close to that value.

#

I guess that will be a "I have no clue - let's see later" issue then.

worthy cape
#

Head's up for anyone working with .hideout files, the default ones from the pack and new exports are now UTF-8 with BOM, while old ones were UTF-16LE with BOM.

#

Not only that, but it's now gosh-darn versioned JSON.

worthy cape
#

This is fun, it closely maps to the old line-oriented format, but merges Flip and Variant into a single fv key, encoding flip as 128.
There's also non-unique keys in the doodads object, so things like nlohmann::json won't work out of the box.

gusty tapir
#

@earnest radish So poe.trade does just do physical damage average no matter what elemental damage is on the damage field. I went with that. Don't know what the official one does. That's the query btw https://www.pathofexile.com/trade/search/Ritual/6ERRvobsG (increase damage from 411 to 412, BenzzeR item will disappear)

civic crane
gusty tapir
#

Ah, so the official site does take the average of both (including quality) for the search parameter. That answers my question. poe.trade just does physical damage average apparently.

worthy cape
#

There we go, got a somewhat OK parse out of nlohmann's SAX parsing functionality, but damn it's ugly.

wind garden
#

I think trade is over 1.5hrs delayed now

#

items still haven't shown up in searches that I priced that long ago

frank drift
#

still getting msgs for stuff from ~3 hours ago

#

probably inconsistent

wind garden
#

ya I'm worried what's going to happen once my items finally do list

gilded tree
wind garden
#

ya I'd have to spend the next 3 hours on DND

#

woooo wall of messages just hit

#

looks like delay is at 1hr 50min

grave wren
#

Just wait until people quit and it'll solve itself galaxyBrainSkill

velvet fog
#
$Curl->setUserAgent('PoEDB/0.0.1 (+https://poedb.tw)');
exotic glen
#

random q; where does poe.ninja source its' data from for stuff like character passives/equipped gear?

#

is there a public api for stuff? all i can find is resources on the stash and characters api

#

right, what is the uri to lookup a characters items/gear ?

#

i couldnt find that, sorry

#

gotcha, so you need to parse xml or whatever from each players url

#

theres no like public api they provide

#

i figured but i wanted to make sure; i assume thats how poe ninja gets their stuff

#

nvm i see whats going on

timber path
#

@compact isle I think there might be some wording issue with the following trade-site stat:
stat_2810286377 on the trade site reads Area contains an additional pack with a Rare monster
The resulting stat displayed on the actual items read: Areas contain an additional pack with a Rare monster
(Note the Area vs Areas )
Search link: https://www.pathofexile.com/trade/search/Ritual/pw0jv35t0

subtle gyro
#

Love it when my users rage at me for the trade API being delayed.

worthy cape
#

Simply fire your users.

grave wren
#

$cannon_tool is pretty bad lately i heard, lots of delay!

subtle gyro
#

You know it’s bad when trade tool devs are telling their users to play SSF.

grave wren
#

dont you enjoy getting pmed for the same item for hours on end?

worthy cape
subtle gyro
#

Thing, Doodad... templarLul

worthy cape
#

Thing is me at 10 PM not being arsed naming the parser state, Doodad is an official term 🙂

primal schooner
#

Anybody here w/ Electron experience have a few minutes to chat about implementation?

rotund solarBOT
#

Don't ask to ask! Post your question here so that people actually know if they can help. It's also better to discuss your question publicly so more people can chime in or learn! That's why these channels are here!

hazy fog
#

hmm that's not quite what that auto reply is for

civic crane
primal schooner
#

Having never done any overlay stuff, should I look at just trying to do JS Electron implementation myself or find someone that can do a py/cpp build?

#

tried reading about both, but i don't work on node, so a lot of both were Greek

subtle gyro
#

@primal schooner I'm sure you can just use @civic crane 's awakened poe trade as a reference

#

and barring that, there are hundreds of much simpler tutorials for simple electron apps online. then all you have to do is take a look at how APoET manages overlaying and you're off to the races.

primal schooner
#

see if it gets me where i'm trying to go

frank drift
#

anecdotally electron (or similar js framework) is by far the most popular way to make overlays now

#

python (or etc) has no advantage unless you already know it

golden bane
#

You could totally do Electron with the backend in a different language if you're more comfortable with it or need some specific library

wind garden
#

.Net 5 + Electron

molten hatch
#

quick question; do you have any plans to add exerted attacks option to pob/configuration?

#

i couldnt find it unless i miss something

simple ravine
#

There's something with how web pages are rendered that makes FPS suffer in some situations. If that's a problem for you, could be a good idea to weigh your options a bit more than yoloing electron, unless you fancy just learning something for the shits and giggles

worthy cape
#

CreateWindowExW is all one needs 😛

simple ravine
#

win32 all the way

#

i haven't really figured out what it is, but it has something to do with the hardware acceleration of website rendering engines

#

(haven't really dug into it either, to be frank)

worthy cape
#

Imagine a world where PoE tools wouldn't be overlays forcing you to play in windowed mode, but showing up in a determinate place on another screen or computer and controllable without leaving the game.

simple ravine
#

I always play in Windowed mode ¯_(ツ)_/¯

worthy cape
#

@simple ravine Running in windowed mode to begin with is bad unless you're sufficiently sized and unobscured to be considered for the DWM to give you a go at proper flipping.

#

Things like G-Sync can easily latch onto slow-presenting software as well.

golden bane
#

PoE mobile companion app when?

simple ravine
#

eyyy, you're on to something

worthy cape
#

I'm having enough perf pitfalls to not quite want to play the game.

simple ravine
#

IPC/RPC between two computorings

#

problem solved

grave wren
#

one rpi for the trade macro, one for buying stuff, one to run pob thinkderp

simple ravine
#

I... actually have one lying around which I lost interest in very quickly

#

and I have a couple of spare monitors

grave wren
#

mine just does znc and webirc

#

could even be fancy with an old eink display

simple ravine
#

mqtt protocol 😄

grave wren
#

i also have a spare pi4 lying, never got around to swap out my pi2

simple ravine
#

if you make one of those trade macros though

#

it'll be a bit difficult to kind of have a UI like awakened poe

#

you will have to switch between primary mouse/keyboard to another device, be it touch or whatever

grave wren
#

so you're saying make a distributed clipboard as well

#

now we're onto something

simple ravine
#

which naturally takes us to voice command

#

or sentient AI, whichever is easiest

grave wren
#

brain computer infterface when

simple ravine
#

Elon Musk might know

tiny cargo
#

Logitech has a solution for sharing mouse/keyboard between computers with a shared clipboard, called Flow, but the supported devices are quite limited

gilded tree
#

You have to hover over an item, make a picture with your phone and you will see the price etc

golden bane
# gilded tree OCR item Scanning

When you're in a player's hideout, they create a QR code on the floor, you scan it and it takes you to their forum shop page, aka trade improvements

gilded tree
#

I like that

#

you could combine that with the hideout stuff from zao

golden bane
#

@worthy cape Automagical QR hideouts when? Jokes aside, if this could be automated, it would probably be the easiest way to link to a static URL in game

worthy cape
#

Astley or hello.jpg, eh?

golden bane
#

Of course, as it is customary

worthy cape
#

I've been thinking about ways to make my tool more resilient when things change in the bundles.

#

Right now I work directly against an installed game location (standalone or Steam) and burn horribly if the DAT spec is off or some assets have become incompatible.

#

I wonder if it's worth hacking up something that digests the game data into a local cache in case of accidents, or otherwise has some sort of graceful fallback.

#

I kind of need room definitions, meshes and decoration tables, but things like materials and textures are a bit optional.

radiant garden
#

Hi, I took an update of the pob community fork a few hours ago and now I cant launch pob...is this the right place to ask about it?

worthy cape
#

Nope, the primary place is the GitHub issues for the project.

radiant garden
#

ok thanks

frank drift
radiant garden
#

i ended up deleting and downloading it again, I didnt see any issues posted, and the update was made over 24hrs ago, so probably something local got messed up, it works now (copied my builds directory over first)

golden bane
#

Path of Building will never delete your builds

radiant garden
#

i deleted the entire directory before downloading it again from github

worthy cape
#

@golden bane I accidentally did when installing over a standalone directory and clicking through the "remove directory contents" dialogue 😄

golden bane
#

Oof, that's not PoB's doing then. I assume you had a backup?

worthy cape
#

Nope, I had cleared out my ZFS snapshots like a week before.

#

Well, it was the PoB installer, but I see your point.

#

I have no-one to blame but my reflex click on a popup.

golden bane
#

Well, most old builds aren't viable anymore anyways

worthy cape
#

I'm so off-meta with my SRS and whatnot that most probably would work still, but yeah, at least I didn't make them myself.

#

"yadda yadda [Yes]"

golden bane
#

I see, I'd recommend having your builds in %DOCUMENTS% instead

worthy cape
#

This was back when I had multiple PCs for PoE and ran PoB from a network share, a portable installation was the perfect fit then.

#

I foolishly installed the installer over it not remembering that it was actually a standalone.

#

In any way, Fun Times Were had.

golden bane
worthy cape
#

Hopefully it'd be small enough to fit comfortably in a cache directory somewhere, not sure how many assets would be pulled in if you had all hideouts and all decorations, with all their related files.

#

puts it on the list

golden bane
#

Related topic: How would you go about CI testing a GGPK viewer? One one hand you shouldn't test against live data, on the other hand it's not useful if it breaks on real data. Kinda hard to keep around a 40 GiB Docker image

worthy cape
#

Less of a problem if you run CI on more local hardware, but if you're on some hosted solution it's indeed a bit hefty.

#

My bulk testing has mostly been a local thing as I've worked on parsers, would probably be handy to rig something that procs on manifest changes.

golden bane
#

Maybe slice out most records that don't cover additional test cases? But then you either need to decompress to full size or do offset offsets, making the whole testing less reliable

#

Maybe there just isn't a good solution

worthy cape
#

Anything caching would be a bit moot too if doing CI, as you typically only one-pass everything.

#

Otherwise it'd be fun to explode the pack onto CVMFS and let its natural caching do its thing.

#

(or simpler, a regular web server and a caching proxy)

sacred skiff
#

Would this be the place to see if anyone wants to sanity check my filter customization interface? Just a clipped screenshot, not a whole app. Working on affix filtering and want to know what people think

wind garden
#

anybody know if body armor enchants have weight values attached to them?

#

k

#

if it's any indicator there are only 3 vaal regalias, of any ilvl, that have the 15% def modifiers enchant

#

gotta be weighted

#

a ton of 8% enchants though

proven sinew
#

Hey, everytime i open my PoE it immediatly closes, does anyone of you have an idea what it could be?

proven sinew
#

oh

#

sorry

subtle gyro
worthy cape
#

Did OP ever mention what DAT file it was?

subtle gyro
#

I don’t think so. I DMed him in hopes that he remembered.

worthy cape
#

All specs for Bestiary*.dat are good

#

(and no, I don't have export functionality in my janky prober 😄 )

subtle gyro
#

Thanks. Looks like the weights have indeed changed.

#

I was looking into how exactly the “rarer of two varieties” mod would impact farming for any given beast, and when I saw the great number of ties in the old data, I was concerned. This screenshot at least places things like the 6L beast at a lower weight so that it works with the mod instead of being a 50/50 shot in case of a 100-weight tie.

worthy cape
#

Gonna close my DAT viewer now before I spot more bugs <_<

subtle gyro
#

Thanks again.

swift beacon
#

If you know which table it is I can export it.

worthy cape
#

PyPoE's CLI exporter probably works if you can trick it into using the correct syntax too.

spring sorrel
#

idk where else to post that

civic crane
subtle gyro
#

I was under the impression that some part of the ggpk format had changed such that pypoe stable wasn’t working as of right now. Never tried pulling latest and testing for myself, just something I thought I remembered reading.

worthy cape
#

@subtle gyro The tech patch in early September hosed everything so that we needed to figure out bundles and their compression from scratch.

#

PyPoE itself at the core has been adapted somewhat soon afterward, needing an external decompression DLL/EXE; but the UI has been a bit hosed (and may still be).

subtle gyro
#

But it has since been resolved?

worthy cape
#

Things like the CLI export still works, and the bits that RePoE needs are fixed now I think.

subtle gyro
#

Interesting okay.

worthy cape
#

Cutting from some other advice I've given:

pip install -e[cli-full]'
pypoe_exporter dat json --files=MonsterVarieties.dat MV.json
pypoe_exporter dat json --files=SpectreOverrides.dat SO.json
#

I never managed to get the syntax right to export multiple files at once 😄

subtle gyro
#

Other question that was on my mind: has anyone here scratched the itch I know we all have felt and written a script to enhance poedb with filtering by tag/influence, perhaps support for weight summations?

worthy cape
#

I just poke Chuan with suggestions.

subtle gyro
#

I started on a little tampermonkey script last night but thought it worth asking before I continue.

#

Do you know if he hosts a public repository? I’d be happy to submit a patch.

#

@velvet fog

worthy cape
#

Unlikely.

subtle gyro
#

Well, I’m still happy to manually create and send over a git patch @velvet fog if you’d welcome it.

primal schooner
#

can you place filter sound files in a subfolder?

#

huh, litearlly tried that

#

i'll check again

#

thought it was weird that it wasn't working

#

must be a sntax error on my end

#

oh right

#

you have to change it for each one

#

there's no way to do it all at once

#

well other htan export ot a word processors and find/replace

#

there's no way, code wise, to do it all at once

#

yeah, nvm i forgot I figured out that's what I had t odo

oak estuary
#

Odd, DelveWeaponDamageOnFullLife2h1 was a mod that could technically spawn on weapons in Delve, but there aren't any for sale in Standard. It's almost like GGG subbed it with DelveWeaponDamageOnFullLife1h1__ instead, as there are at least 90 of those items in Standard. Is there any way to tell when a mod is drop-disabled like this?

azure ibex
#

What tools are people using today for tracking net worth?

#

Currency cop is not updated to my knowledge, and i forgot what i used a few leagues ago.

frank drift
azure ibex
#

Sweet thanks!

oak estuary
#

The odd thing is, that mod does have spawn weights, but doesn't show up on trade

#

Thanks for finding it, that's kind of what I suspected, since it seems unlikely that no one would put one up for trade, otherwise. Unfortunate that I might have to hack something in to exclude that mod, though

rapid pagoda
#

spawn weights are kind of a weird thing for delve mods though, since they don't spawn naturally (not anymore at least). even if the weights are used when choosing a mod in one of the delve encounters which spawns special items, it could be that no encounters have that type of mod in their pool

velvet fog
onyx tendon
#

Anyone know if the addon EnhancePoEApp is ok to use?

frank drift
worthy cape
#

As with any software you download, it may do naughty things to your computer and your PoE account.

frank drift
#

but it's open source and used a bunch

worthy cape
#

On the tin this one seems to be doing acceptable things, even if their attitude toward rate-limiting seems a bit crude.

frank drift
#

so very unlikely

worthy cape
#

@frank drift Instructions recommend grabbing a binary of uncertain heritage, but yeah.

#

DO NOT download the whole github repository, since it may include some new experimental features.

#

Heh.

grave wren
#

clones repo

bright pewter
#

Dont know if im in the wrong channel, but is there a tool with that i can make the life and mana hud transparent?

#

I play hc and it often is just in the way....

worthy cape
#

There is no legal way of altering the game's rendering.

bright pewter
#

Oh thats sad

grave wren
#

you could try window mode and then simulate a wider screen to see more though

bright pewter
#

Hmmm gonna try that

#

Ty

stoic locust
#

minified ui for it, but also has item counters

vague aurora
#

Taugt my GF today rubberduck debugging

golden bane
#

A weekly dinner schedule, how very German of you 😄

wind garden
#

@fickle yew is there something up with poe.ninja? The buy price of a mirror is listed as 217ex, but if you search for one there's nothing under 269ex. That's a really big discrepancy.

hazy fiber
#

part of its the update delay, and part of that is to try and prevent "gaming" poe ninja

wind garden
#

No, that's not it. It's just completely wrong.

#

Take a look at nearly any high price item

#

Replica Farrul's, ninja says 50ex, should be 54ex.

#

Replica shoud, ninja says 22ex, it's been 20ex for almost 2 days now.

#

Headhunter, ninja says 92ex, should be 90ex

#

Replica baited breath, ninja says 208ex, but there's been one listed at 180ex all day

#

it's like it got stuck a couple of days ago and stopped updating

#

I could accept that all those are just normal differences though. But mirror being off by more than 20% is not normal.

fickle yew
#

@wind garden Thanks for the heads up. That does seem like a bigger than normal difference.. I'll investigate.

fickle yew
wind garden
#

Thanks a bunch

gusty smelt
#

yo what trade program is everyone using as of now? last time i played i used trademacro

#

the autohotkey thing

frank drift
molten hatch
#

do people actually buy replica bated breath for 180 ex?

grave wren
#

how is that relevant to a tooldev channel?

molten hatch
#

its not actually

violet path
#

im a tool dev and i bought one for way more than that, but i wouldn't want to talk about it here or anywhere else

broken cloud
#

@fickle yew Just noticed the Invitations category, much appreciated

#

It seems to be listing magic ones too though? "Hexwarded Maven's Invitation: Tirn's End of Toughness"

#

Also, the correct (base item) listings have a bunch of irrelevant explicitModifiers

frank drift
#

@fickle yew have you thought about ignoring quality for alt quality gem prices? they drop with quality, so quality barely affects price and it makes it so poeninja data is inaccurate

fickle yew
frank drift
#

and that's probably the bigger issue

#

since you only look at level 1 or level 20 gems

#

you miss 99% of alt quality gems as far as I can tell

#

a quick fix would be to add a level 16 category for alt quality maybe

fickle yew
#

Yeah I see what you mean. Quality with awakened gems actually also looks strange. I'll take a look at that.

frank drift
#

yeah awakened gems also drop with random quality iirc

#

content also drops normal gems with quality by the truckload now

#

so it would probably make sense to treat 0-19 quality as the same

#

generally

fickle yew
#

Yeah I think I might just do that. Was also what I was thinking. Maybe also level 1-19

#

As a group

pseudo ocean
#

Does anyone have a stash update id for me from just before the start of heist league

#

i am running out of memory on my servers so gotta prune some data

worthy cape
#

There's some mentioned in here if you search for public-stash-tabs, but this one is a few days after launch: #tooldev-general message

#

Another one mentioned like two weeks before the league.

pseudo ocean
#

I must have fucked something up, unique stash db grew like 400% since a couple weeks ago

compact isle
#

finally a free moment to work through these OAuth client requests 😄

wooden burrow
#

@compact isle QQ How do I request oAuth request for an app?

compact isle
wooden burrow
#

@compact isle Thank you!

#

@compact isle Sent and thank you

broken cloud
#

@compact isle Would like to get in on this too... sent email as well. Thanks mavenCozy

pseudo ocean
#

what new apis are useable after users have oauthed, just the item filters?

hushed relic
#

@fickle yew Hey Rasmus, I'd like to suggest a section for Cluster Jewels: their prices change quite a bit depending on itemlevel, type and node count. I think there's be some interest for that (+ I'd totally love to automate it in my filter D: )

fickle yew
hushed relic
#

awesome, thanks!

civic crane
#
def __init__(self, rawsource='', *children, **attributes):

any python gurus? First arg I pass will be catched by rawsource but I want that it to goes into *args

wind garden
#

what's the easiest way to get unique item data in json form? ie. mods with their possible value ranges

worthy cape
#

Python 3.8 supposedly has improvements there.

golden bane
#

@civic crane Probably best to create a new dict out of children and update rawsource into it

worthy cape
golden bane
#

Yeah you could do positional-only parameters, but that changes the signature. Not sure if that's desired

worthy cape
#

That is, apparently, def __init__(self, *args, rawsource='', **kws):

civic crane
#

this is an extension for Sphinx, so can't change anything. will pass ugly empty string then 😦

wind garden
#

does poedb have an api?

civic crane
wind garden
#

think this is what I'm looking for

https://pathofexile.gamepedia.com/api.php?action=cargoquery&tables=items&fields=name,stat_text&where=rarity=%22Unique%22&group_by=name&format=json
civic crane
#

not bad at all, I'm running validation script and fix some wrong mods for unique items on wiki every league 🙂

wise forge
#

where can i find documentation on the structure of GGPK files? so far i've been reading the code of LibGGPK and PyPoE but would greatly prefer some written documentation on formats, records, byte offsets, etc.

golden bane
wise forge
#

thanks, this is great!

worthy cape
#

My current codebase isn't public, but poe-rs and gggtools should probably have a fair bit.

#

Stupid questions also welcome 😉

wise forge
#

great, thanks! these are the most helpful docs i've seen so far

#

i'm toying around with a high-level ggpk parser in go (and then rust after) just to have something to do

rapid pagoda
#

I probably need to refactor it to make it use the io/fs interface though...

wise forge
rapid pagoda
#

yeah, I never really finished river, it was mostly an experiment in writing a schema

violet path
velvet fog
#

@violet path The client data may be inconsistent with the server

primal schooner
#

is there a place that has better quality sound files of all the loot filter sounds than neversink ?

worthy cape
#

CDN or game banks maybe? Never looked much into the audio.

#

Stock FMOD extractors got upset with the ones I sliced out so didn't bother much more.

lean phoenix
#

Someone know what I must to do ? I have received this message according to My filter SimpleFilter ? :
Hi! If you wish to advertise your tool, please open a modmail by DM'ing our "DM 4 Help" bot

minor charm
#

the bot is listed on the right -->> you can send it a DM

worthy cape
#

You may want to read rule 3 of the Discord closely and if you have questions, contact server moderation via the mentioned bot as this has nothing to do with tool development.

civic crane
worthy cape
lean phoenix
#

Still don't know what I should to do with this but thx

worthy cape
#

@lean phoenix You have apparently violated the rules of one of your Discord servers and a bot has helpfully informed you of this, and told you the method to contact that server's moderation team for discussion or information on what you did.

#

Assuming that the spelling of that user name is correct, smells like TFT.

lean phoenix
#

hymm ok

worthy cape
#

Oof. Dear ImGui columns limited to 64.

gilded tree
# worthy cape Oof. Dear ImGui columns limited to 64.

Are you sure? Seems like it was removed?

https://github.com/ocornut/imgui/issues/3037
At least the assert isn’t in master anymore. Maybe it’s something completely different, I never used 64 columns 😄

GitHub

Hello ocornut. I just read the changelog and found that the number of columns have been limited between 1-64. Just wanted to know, Is there any other alternative for it? Are you planning to remove ...

worthy cape
#

Sorry, table columns.

#

I forget that there's a separate non-table column system.

gilded tree
#

Oh

worthy cape
#

I use the tables for my DAT tool, and it's a lot of work to replicate myself and I don't want to branch the library again.

#

Probably going to go for filtering the number of columns instead.

civic crane
#

can you make virtual table based on scroll pos like we web folks do 😅

worthy cape
#

This is way too convenient 😄

#

There’s a Finnish patch from December that expands it but not production grade.

#

Underlying reason seems to mostly be bitmasks for enabled columns and whatnot.

civic crane
#

Ctrl+H int64_t int128_t

worthy cape
#

WorldAreas.dat has like 111 fields.

lean phoenix
worthy cape
#

“Solved” two problems at once, checkboxes for what columns to show, makes reading off rows easier.

#

Could adapt it into a schema editor like PoB has too.

rare jasper
#

Two questions, A) Are we still allowed to call the live trade api, and B) does anyone have a recent python example of how to connect with a websocket? I'm just getting 403 on my slightly older script.

#

Yes I'm setting POESESSID and __cfuid

#

So I assume something has changed again

rare jasper
#

User-Agent, got it

wooden burrow
#

Hello -- how are people parsing GGPK files now? with PyPoe broken, I'm curious how people are doing this consistently?

civic crane
worthy cape
#

Depends on what you mean by "parsing", but GGPK itself and the bundles are completely solved, the state of the assorted other formats is the same as it has always been, and the specs for interpreting DAT files constantly needs little tweaks to apply.

wooden burrow
worthy cape
#

Correct, there's no metadata describing the fields of the tables.

#

The changes tend to be adding columns or possibly changing the data type of one, but you might get a decent idea by comparing against the previous contents of a table, or guessing that it's either a bunch of ints or bools added. If they look like list or string offsets, try those.

#

Some people have considered tools that can tell you the probability that a byte slice of the rows is likely to be some particular type, or considered using the differences/similarities between the different languages, but not sure if there's much done there.

#

There's also the possiblity to infer things by looking at the 32-bit and 64-bit tables, as field widths differ there.

wooden burrow
worthy cape
#

Not sure if I've documented the fundamentals of DAT there, but the structure is fully mapped out, it's just the particular specs for each table that are unknowable.

worthy cape
empty gazelle
#

Is the best way to get large amounts of trade searches/data just hitting the pathofexile.com/trade API? I do not need the most up to date results, just a lot of them

#

I see that it's roughly limited to 100 items per call without a way to index

worthy cape
#

Follow the river with the last_change_id, indeed.

frank drift
#

^

empty gazelle
#

Oh, I see, is there a community library most people are using? I saw https://github.com/ajs/poefixer but it hasn't been updated in 3 years

edit: Found plenty of examples in the community libraries around, and some powerful full on indexers, really cool stuff. I'll put together my own thing based on that

wind garden
#

wohh I'm offline for a day and poe.ninja gets a new look?

#

looks pretty spiffy

grave wren
#

so this is OT for poe but it seems kinda weird to read those complaints about c# as a java dev: https://www.ultimate-adom.com/index.php/2021/02/19/ultimate-adom-load-save-clarification/

worthy cape
#

First thought, .ot is a PoE file format 😄

broken cloud
#

Woah, ADOM - I was playing this as a kid last millennium

#

I think this is the fourth try at releasing a sequel templarHeist

worthy cape
#

Regardless of platform, not building load/save/reproducibility into it from the start sounds like a horrible idea.

broken cloud
#

Was just about to say that - seems very odd to leave savegame functionality to the very end

grave wren
#

its also very odd to implement it in java and assume it will work just fine in c#

worthy cape
#

I'm a bit surprised that they're able to do it with naive s11n to begin with, is there much support for versioning and downlevel support there?

grave wren
#

pretty sure java handles adding and removing fields automatically as long as you do it in specific boundaries and keep the serialVersionUID the same

#

e.g. if you add a new boolean and it has to downgrade it'll discard it; if you have to upgrade an old object it'll initialize with the default

worthy cape
simple ravine
#

what on earth is he doing? why on earth is he doing it that way?

grave wren
#

20years of java experience

#

but i really cant imagine this being an issue in c# tbf

simple ravine
#

unless you needed to downcast it or something

#

and yeah, that looks more like Java than C#, looking at the naming conventions

worthy cape
#

@simple ravine Properties return copies of value types (structs).

#

Attempting to assign to a member of a property compiles transparently but has no effect on the original, as it assigns to the temporary.

simple ravine
#

I'm glad I skipped java...

worthy cape
#

This is C#.

simple ravine
#

funny thing though

worthy cape
#

(in Unity, but it's the language itself at work)

simple ravine
#

if you re-assign position.y it will create a defensive copy

grave wren
#

unsure where you saw java naming conventions in the post

simple ravine
#

lower case property names

#

c# you normally use PascalCasing

worthy cape
#

Any sufficiently large project will certainly have their own homebrew conventions. Assumptions are fun.

#

Unless the language hard-enforces it, anything goes.

grave wren
#

not really, i havent seen anyone breaking java conventions in our work project

#

and i'd not merge shit not conforming

simple ravine
#

well, looking back at my programming career, I have seen extremely few code bases where properties were names with camelCase or lowercase.

worthy cape
#

Let me rephrase it. Anything that has a legacy.

simple ravine
#

Well, I started with .NET 1.1 in 2001 🙂

grave wren
#

if you rephrase it to: there were some people breaking the conventions sure

#

but homebrew conventions? ain't nobody got time for that

worthy cape
#

It's a good thing that my current poe-cpp is not public, I have all the conventions 😄

grave wren
#

📉

worthy cape
#

May I interest you in a poe::format::TSIFile, right next to a poe::io::file_handle?
Member variables end in _, except when they don't.

grave wren
#

why are you like this templarSad

worthy cape
#

Hadn't written C++ in ages, had to start with something and slowly figured out that it was unreadable.

simple ravine
#

Ah, that's why.

#

of course.

#

It's evident I spend more time in PowerPoint than Visual Studio nowadays

#

he could've just done this though:

w.Position = new Vector3(w.Position.X, 100f, w.Position.Z);
worthy cape
#

Lots of ways to do things, still requires awareness of the underlying trap.

grave wren
#

then its not a cool hack

#

also is there an idiots guide to permissions on azure graph api, it seems very convoluted if you never used it

simple ravine
#

gut feeling says that's actually less jitted IL code, but oh well

#

faust, well there's delegated permissions and then there are application permissions

#

application permissions require admin consent

#

i guess that's the 101 introduction 😄

grave wren
#

lets say i wanna write a bot for teams and create an app, so i add the application permissions for teams to lets say schedule a meeting for a person. I give that thing the app permission read user, read/write onlinemeeting and i'd have expected it to work while all i get is unauthorized

#

the whole thing feels like a minefield

#

then when you see a guide its for c# with inbuilt nice integrations and you're just like templarSad

simple ravine
#

I think you need Calendar.ReadWrite.All

grave wren
simple ravine
#

unless you have the user token

#

All I see is Achtung

#

one sec, switching language

grave wren
#

got baited by the english toggle

simple ravine
#

so do you have OnlineMeetings.ReadWrite.All added and admin-consented?

grave wren
#

yep

simple ravine
#

u get 401 or 403?

grave wren
#

403 so seems permission related

simple ravine
#

I'd have to see more to figure it out

#

You are getting a bearer token using the app id and secret, right?

grave wren
#

i'm using the java lib MS provides but i can access the user-data just fine using the ClientCredentialProvider (client id, scope, secret, tenant)

#

these are the permissions

#

funnily enough i had to provide this as scope: https://graph.microsoft.com/.default and i am still unsure why

simple ravine
#

it's just one of those things you have to accept and move on heh

#

debug ur jwt token

grave wren
#

I'll probably have to just do it manually once to do that, thanks

#

and disregard the wrapper until i figure that issue out

#

i have very bad skype api flashbacks when interacting with teams so far

simple ravine
#

file a github issue if you're up for it

grave wren
#

discord is a dream compared to either skype or teams so far

simple ravine
#

graph api is a dumpster fire

grave wren
#

isnt that the hot new shit?

simple ravine
#

im just not a fan of the M365 stuff in general

grave wren
#

same, it all feels very half baked, i assumed its better if you use it via their c# libs

#

just like sap stuff

simple ravine
#

oh dont get me started on the SAP .NET connector

grave wren
#

good to bearable in the expected env and horrible dumpsterfire elsewhere

simple ravine
#

The people who taught, hired and did not fire the people who wrote that library, should be fired without severance

grave wren
#

lets say my hope is that we dont pick teams as alternative to s4b

#

just from the api alone for integrating

simple ravine
#

what is s4b?

grave wren
#

skype for business

#

it'll be turned off in july

simple ravine
#

yeah

#

teams as a user experience is good though

#

not great, but good

grave wren
#

at least that 😄

gilded tree
simple ravine
#

well I hate the calendar stuff the most of the ones I've encountered, which is to be fair more to do with the underlying Exchange/Office bullshit that's utter utter garbage

worthy cape
#

@rapid pagoda Heard you're getting generics in Go and that the community is a bit split 😄

simple ravine
#

wrong channel?

#

Good question, perhaps use the "DM for Mod Help" thing

rapid pagoda
#

but yeah -- It's Happening ™️

broken cloud
#

Is there a way to get old versions of reworked skill gems?

#

Unique items on the wiki have a list of stat diffs between versions, but skill gems don't

worthy cape
#

Obtain old DATs and do whatever the process is to export them?

#

Not exactly trivial of course 🙂

minor charm
#

OT Question: If you were interviewing for a position and the applicant had no proficiency in any modern IDE but was extremely proficient with Vim. What would be your first thoughts? and secondarily would you hire ?

worthy cape
#

Depends on if you want them to bore your ears off with how "as good" Vim is with the right extensions, despite not actually knowing the true power of an IDE 🙂

#

I've been that guy, but I grew up. Vim competence is nice if you've got a bit of sysadm work, especially on shared remote machines.

#

But you have to look hard to consider it equivalent for anything fancier than C IMO.

minor charm
#

despite not actually knowing the true power of an IDE

#

this is the kicker isnt it

#

It is nice a lot of the old tools have the common vim-like interface

rapid pagoda
minor charm
#

Those are some interesting viewpoints. I've dabbled in AVR/Atmel Studio and other vendor specific IDE's but I usually run the backend IDE tools and toolchains direct on the command line anyway. So i've never really needed to learn an IDE in depth. I've just been wondering if I'll encounter issues with only beginner IDE knowledge

#

yocto/openEmbedded stuff, so yeah headless linux environment. touched QtCreator very briefly for some GUI apps but never in any great detail

golden bane
#

Some basic familiarity with VS and Jetbrains IDEs won't hurt even if you prefer vim for editing code

hazy fog
#

lets be honest noone is going to make you prove your knowledge of an ide you can just say you use vs

#

heck my current job wanted vs knowledge but it wasn't until months into it that I actually had to use VS, probably a unique case though, most of what I do isn't 'real' programming its glorified data entry lol

grave wren
#

I'd make you proof that you can use a debugger if you're an editor only guy. Just to make sure there's no surprise coming our way

golden bane
#

@fickle yew @chrome topaz @earnest radish @silent vapor
I'm pinging you on behalf of Path Of Building Community, as I believe all of you depend on Path Of Building in your own projects.
We're planning to release version 2.0.0 of Path of Building soon, with some breaking changes for third-party developers.

  • All functions in HeadlessWrapper.lua become global, and HeadlessWrapper.lua itself becomes stable.
  • The file structure changes, like this:
    Assets/ -> src/Assets/
    Classes/ -> src/Classes/
    Data/ -> src/Data/
    Export/ -> src/Export/
    Modules/ -> src/Modules/
    TreeData/ -> src/TreeData/
    GameVersions.lua -> src/GameVersions.lua
    HeadlessWrapper.lua -> src/Headlesswrapper.lua
    Launch.lua -> src/Launch.lua
    LaunchInstall.lua -> src/LaunchInstall.lua
    UpdateApply.lua -> src/UpdateApply.lua
    UpdateCheck.lua -> src/UpdateCheck.lua
    changelog.txt -> src/changelog.txt
    manifest.xml -> src/manifest.xml
    runtime-win32.zip -> extracted to runtime/
    tree-2_6.zip -> removed
    tree-3_6.zip -> removed
    tree-3_7.zip -> removed
    tree-3_8.zip -> removed
    tree-3_9.zip -> removed
    tree-3_10.zip -> removed
    tree-3_11.zip -> removed
    tree-3_12.zip -> removed
    tree-3_13.zip -> removed
    In turn, these changes enable us to add automatic testing to Path of Building. We hope we're able to ship with fewer bugs and become more confident for larger refactors in the future.
    Also we're switching to SemVer, with HeadlessWrapper.lua as official API.
    If you need help with migrating, please let me know.
silent vapor
golden bane
hexed berry
#

@idle cloud 4 1

golden bane
#

I think you contributed to PoBItemTester?

#

I see, that's where I got the name 😄

silent vapor
# golden bane Yeah I know, I just didn't want to post this twice 😉 I'm curious what your modi...

The one we're using is here: https://github.com/VolatilePulse/PoB-Item-Tester/blob/master/ItemTester/mockui.lua
We also make most of the entries global, define some aliases like t_insert, provide implementations for Get.*Path that use env vars, add in DownloadPage so build updates work, provide a saveBuildToXml... and some other stuff like HTML tooltips that shouldn't be in the main HeadLessWrapper.

golden bane
#

I don't know anything about your project, but have you looked into https://github.com/scoder/lupa ?@earnest radish

silent vapor
#

Last I looked at Lupa it would not run PoB.

#

...and its many variants.

golden bane
#

If you want to talk anything Python, just DM me 🙂

#

Yes, I'll send you an invite

#

Bots are everywhere 😬

fickle yew
golden bane
hazy fog
#

furretPeek who's coldino what's he do why isn't he a tooldev

hazy fog
#

applying tooldev to @silent vapor a
Major contributor to https://github.com/VolatilePulse/PoB-Item-Tester and contributor to https://github.com/PathOfBuildingCommunity/PathOfBuilding

#

done

hazy fog
#

👍

grave wren
#

who's ferret and why is he tooldev :^)

hazy fog
#

because I develop this channel

worthy cape
#

Heh, look away from the game for a league or two and they invent two new ARM file versions.

velvet fog
#

farewell poeapp

golden bane
civic crane
#

can someone generate diff of added dat file names in 3.13

worthy cape
#

Probably should've excluded the language subdirs, but hey.

#

Diff is against manifest 2585743494052913961 from Jan 11th.

frank drift
#

anyone offered you money for your 3 letter github name?

#

I got 0.15 BTC for mine

worthy cape
#

Heh, no.

#

Nothing on twitter either, but there I'm four letters.

rapid pagoda
#

MicrotransactionHudVariations 👀

#

revenge of the orb girls?

worthy cape
#

On mid-league DAT schema changes btw, #wiki found a change in ItemClasses.dat size at some point during this league now.

rapid pagoda
#

Yeah, I saw that. Interesting. Any idea what patch it coincided with? I wonder if you could guess at the function of the new bool from patch notes

worthy cape
#

I've been behind on downloading all the things since the tech patch, but should probably get that going again soon.

ashen berry
#

does anyone have reason to believe that timeless jewel passive tree effects can (or cannot) be computed from code in the client?

golden bane
ashen berry
#

aw, well that is very suggestive evidence

worthy cape
#

About as much that is possible to gather within ToS as decoding traffic and reversing the executable is not allowed.

civic crane
#

yep verified, client receives 2x bytes than normal jewel (entered random chat room + tested delta of bytes for placing/removing jewel 10 times)

#

also wtf poe uses tcp

worthy cape
#

Logout macro does a graceful TCP shutdown, the fastest way to signal the server.

golden bane
#

Shouldn't this make no difference anyways if you're playing on lockstep?

worthy cape
#

The server still waits for the full disconnect period of no traffic.

golden bane
#

Oh, meant to reply to @civic crane

civic crane
#

predictive & lockstep (also restarted client just in case/entered map/tested on low latency and high australia) kinda strange that predictive uses tcp

violet path
hazy fiber
#

iirc there was somone in here who posted somthing about debug strings left in the .exe thinking its mersenne twister

but I dont know how much further he got than that, and dont know how many other people have risked trying to reverse engineer the .exe

#

its almost certainly not in there based on the data the client receives from the server

golden bane
#

MT is easy to implement, so that would be plausible

rapid pagoda
hazy fiber
#

i mean there is (or was) apparently debug strings in the client .exe according to somone in here

#

so maybe?

finite cypress
worthy cape
#

@finite cypress Make a post on the Bug Reports forum, tagged "Trade Website", as this doesn't pertain to tool development.

finite cypress
#

ok. wasn't sure if this was something expected that the tool developers have come across already.

#

i asked here since I'm developing something looking at affixes and came across it

worthy cape
#

Are you looking at the trade website as the source for these, or consulting data files or poedb?

finite cypress
grave wren
#

do any of you have experience with sufficiently fast recognition of text in game screenshots? tried easy OCR for python but its pretty slow with 2560x1440 when not using the gpu acceleration. Trying to quickly capture gems in gheists to price check

queen portal
#

does anybody know what the rate limit is for the character-window, there does not seem to be any rate limit in the response header

worthy cape
#

Which specific endpoint?

queen portal
#

character-window/get-passive-skills

worthy cape
#

Seems so indeed, but other endpoints have policies.

queen portal
#

i found those poking around, don't want to lock myself out as i am playing around with the different end points

torpid salmon
# grave wren do any of you have experience with sufficiently fast recognition of text in game...

Looks like https://github.com/esge/PoE-HarvestVendor uses https://sourceforge.net/projects/capture2text/. Don't know if that works for you, but it's not that slow.

grave wren
#

thanks going to check that out

gilded tree
broken cloud
#

Does https://www.pathofexile.com/character-window/get-stash-items allow access to unique stash tabs, or is it the same situation as map tabs?

#

Can't check it myself as I don't have one

velvet fog
broken cloud
#

Cheers, thank you... seems like a pain though, if no API access yet I'll just leave it unsupported for now

noble stag
#

What's gggs stance on scraping the website?

worthy cape
tawny girder
#

Hey I'm not sure if this is the place to ask, but is there a way to pipe guild chat API into some output, possibly as a webhook to a discord bot?

#

or vice versa

#

Because in our guild, most players leave after 1.5 months or so, but it would be great for them to interact with players who are still playing

#

but since they don't just open the client just to chat, I was wondering if such a functionality exist

golden bane
#

There is no guild chat API

tawny girder
#

feelsbadman

#

I'm pretty sure some struggling guild members could use some retired members help for bosses and stuff but I guess that won't be happening soon

golden bane
#

You would be able to broadcast the guild chat by reading from the client log, but writing messages to the guild chat with automation would be against the ToS

tawny girder
#

yeah that's one way I suppose

#

thanks for the insight

broken cloud
#

Hi, does anyone know about how mods on the new unique watchstones are generated?

#

Poedb.tw and wiki say they're fixed, but as far as I can tell it's "4 random metallic_watchstone mods"

#

Are there any other conditions on which mods can appear on them?

velvet fog
broken cloud
#

Ah, no restriction on corresponding base type? Cheers, thank you

coral pasture
#

hi everyone, does anyone know what "Position Proxy" nodes correspond to in the tree json data?

carmine merlin
coral pasture
#

@carmine merlin aha ok, thanks!

#

also is there any logic in how nodes are assigned to the in field vs the out field?

#

im trying to make sense of it and sometimes nodes seemed to be assigned to one or the other without any rhyme or reason I can see

hazy fiber
#

isnt it order in tree json?

worthy cape
#

Anyone of you fine folks hosted with OVH? https://twitter.com/olesovhcom/status/1369478732247932929?s=21

We have a major incident on SBG2. The fire declared in the building. Firefighters were immediately on the scene but could not control the fire in SBG2. The whole site has been isolated which impacts all services in SGB1-4. We recommend to activate your Disaster Recovery Plan.

Retweets

297

Likes

463

frank drift
#

huh

simple ravine
#

SBG-1 to 4 all down due to SBG-2 fire

frank drift
rapid pagoda
#

big F in chat for all those poor overworked seedboxes

vapid crane
#

GGGs OAuth API seems to be semi-down right now: https://www.pathofexile.com/api/profile
Only like 50% of requests are answered, the others get error code 7, Temporarily Unavailable, Http 503.
Anyone know more about this? Is this some kind of oddly planned Saturday maintenance or an actual error GGG needs to handle?

grave wren
#

game servers have been down a while ago and trade is also down

vapid crane
#

oh, right. thanks

#

didnt think to check those, usually they dont affect the oauth api

stoic locust
#

trying to remember how to work with json objects cause its been a while and a half.

Namely pieces like this:

{"result":[{"id":"b85f9524f6f0c3d45050c26a95b463731dfdad8d7ec2f35343361dccb5f1dc21","item":{"typeLine":"Blighted Ghetto Map","properties":[{"name":"Map Tier","values":[["15",0]],"displayMode":0,"type":1},{"name":"Atlas Region","values":[["Valdo's Rest",0]],"displayMode":0}]}}]}```
Wanting to turn the properties into a Dictionary where say...
```cs
Console.WriteLine($"Region: {result[0].properties["Atlas Region"]}, Tier: {result[0].properties["Map Tier"]}");

/*Result:

Region: Valdo's Rest, Tier: 15
*/```
grave wren
#
result={"result":[{"id":"b85f9524f6f0c3d45050c26a95b463731dfdad8d7ec2f35343361dccb5f1dc21","item":{"typeLine":"Blighted Ghetto Map","properties":[{"name":"Map Tier","values":[["15",0]],"displayMode":0,"type":1},{"name":"Atlas Region","values":[["Valdo's Rest",0]],"displayMode":0}]}}]}
result['result'][0]['item']['properties'][1]['values'][0][0]
>> "Valdo's Rest"
#

looks like c# so maybe someone can help language specific

stoic locust
#

yea its c#

#

been using Newtonsoft.Json.JsonConvert.DeserializeObject

to grab what I need into an object class or w/e

grave wren
#

dunno typically you'd either pick out the parts like above or map it to classes and have nice objects to work with, never did that in c# tho

stoic locust
#

the mapping bit is what im trying to do 😄

grave wren
#

@silent tree come here c# nerd

silent tree
#

who summons me

grave wren
#

the c# gods

silent tree
#

oh

#

json

stoic locust
#

wait, Faust. You did the summoning, so wouldn't that imply you're a C# god?

#

Why can't you answer then 😄

silent tree
#

make an object for the map with properties region, tier, w/e else

#

then do JsonConvert.DeserializeObject<MapObject>

#

might also be able to do DeserializeObject<List<MapObject>> if u need a collection

#

disclaimer the only json i've used in a while was some fucked up stuff from sonarqube a while back

stoic locust
#

for the other stuff its been as straightforward as doing that, but properties for that json is

"properties": [{"name":"Value I want as a Key", "values":[["Value I want as a Value","0"]]

silent tree
#

if it's only got 2 attributes u might be able to do it by deserializing to Dictionary<string, int>

#

i don't use a lot of dictionaries in my stuff so i'm a bit rusty on how they're meant to work

stoic locust
#

right, but that sample is just a straight key value pairing

this would be say....
key = properties.name
value = properties.values[0]

to get it to a point where:
result[0].properties["Atlas Region"] returns "Valdo's Rest"

#

gonna go back to tinkering

silent tree
#

how much of the json for the map are u going to use

#

cus if ur using several properties it would be much more useful to use an ienumerable of an object instead of a dictionary

grave wren
#

wouldnt that just be:
class 1: string Name, List<List<String>> values

simple ravine
#

@stoic locust if you don't figure it out I'll help you later tonight

#

just need to make dinner and feed le kid

grave wren
#

was curious so i tested it (vscode is ass):
@stoic locust

using System;
using System.Collections.Generic;
using Newtonsoft.Json;

namespace csharp_tst
{

    class Property{
        [JsonProperty("name")]
        String Name  { get; set; }
        [JsonProperty("values")]
        List<List<String>> Values { get; set; }
    }

    class Item
    {
        [JsonProperty("typeLine")]
        String TypeLine { get; set; }
        [JsonProperty("properties")]
        List<Property> Properties  { get; set; }
    }
    class Result
    {
        [JsonProperty("id")]
        String Id  { get; set; }
        [JsonProperty("item")]
        Item Item  { get; set; }

    }
    class XResponse
    {
        [JsonProperty("result")]
        List<Result> Result { get; set; }
    }

    class Program
    {
        static void Main(string[] args)
        {
            String json = "{\"result\":[{\"id\":\"b85f9524f6f0c3d45050c26a95b463731dfdad8d7ec2f35343361dccb5f1dc21\",\"item\":{\"typeLine\":\"Blighted Ghetto Map\",\"properties\":[{\"name\":\"Map Tier\",\"values\":[[\"15\",0]],\"displayMode\":0,\"type\":1},{\"name\":\"Atlas Region\",\"values\":[[\"Valdo's Rest\",0]],\"displayMode\":0}]}}]}";
            var result=JsonConvert.DeserializeObject<XResponse>(json);
            var result2=JsonConvert.DeserializeObject(json);
            Console.WriteLine(result);
        }
    }
}
#

result2 seems to be the dict you worked with, result 1 is translating it into objects as you wanted it

tiny cargo
#
using System;
using System.Collections.Generic;
using Newtonsoft.Json.Linq;
                    
public class Program
{
    class res
    {
        public string id;
        public Dictionary<string, string> properties;
        public res (string id, Dictionary<string, string> properties){
            this.id = id;
            this.properties = properties;
        }
    }
    
    public static void Main()
    {
        var json = "{\"result\":[{\"id\":\"b85f9524f6f0c3d45050c26a95b463731dfdad8d7ec2f35343361dccb5f1dc21\",\"item\":{\"typeLine\":\"Blighted Ghetto Map\",\"properties\":[{\"name\":\"Map Tier\",\"values\":[[\"15\",0]],\"displayMode\":0,\"type\":1},{\"name\":\"Atlas Region\",\"values\":[[\"Valdo's Rest\",0]],\"displayMode\":0}]}}]}";
        
        var result = new List<res>();
        var parsed_json = JObject.Parse(json);
        foreach(var item in parsed_json["result"]){
            var properties = new Dictionary<string, string>();
            foreach(var prop in item["item"]["properties"]){
                properties.Add(prop["name"].ToString(), prop["values"][0][0].ToString());
            }
            result.Add(new res((string)item["id"], properties));
        }
        
        Console.WriteLine($"Region: {result[0].properties["Atlas Region"]}, Tier: {result[0].properties["Map Tier"]}");
        
    }
}

If know how you want the mapping is there any reason to not do "by hand"?

grave wren
#

seems like more effort than just mapping it, idk

stoic locust
#

guess it'd hahve to be a bit of a custom deserializing to get it specifically that way.

#

Though, I did manage to get some additions to help avoid hitting the ratelimit.

#

Context: Blight Maps, with Chaos price between 1 and 9, and Map Tier between 10 and 16

#

Though... still hitting the rate limit sometimes.

Ip Limit Reached | Delaying for 4500 ms
Account Limit Reached | Delaying for 4500 ms
Showing 60 out of 60
Showing 83 out of 83
Ip Limit Reached | Delaying for 4500 ms
Account Limit Reached | Delaying for 4500 ms
Showing 100 out of 484
Ip Limit Reached | Delaying for 4500 ms
Showing 100 out of 634
Requests Blocked | Delaying for 301000 ms```
velvet fog
#

@compact isle garena online api broken

compact isle
worthy cape
#

The pre-3.14 engine patch in the next few weeks will add support for M1 through Rosetta.

#

Pre-league engine patch sounds scary, any bets on what will break? 😄

velvet fog
frank drift
#

running a game through Rosetta sounds kinda impressive but I dunno anything about Macs

worthy cape
#

It's supposedly stupid effective.

#

Guess they've found "all" the AVX usage now 🙂

#

@frank drift Running anything on macs sounds like a fool's errand, judging by the experiences of most of the masochists in #mac-os🍎

#

I mean, kind of of ran on my stupidly overpowered Hackintosh, but most macs are very much not of the type of hardware that would run PoE on any platform, and based on the reports of people who bootcamp it on decent x86_64 machines, the port is not exactly equivalent in perf.

#

I wonder if there's some ancient promise that "sure, we'll be on mac" or if the scope of it was just so underestimated based on how development has fared on PoE Mobile.

tacit birch
#

Not sure where to post this but I'm pretty sure these calculations are wrong in the community version of pob.

The total pool for each type should be scaled by the % taken as from each type. In this case half half.

worthy cape
#

@tacit birch look for and file GitHub issues in the PathOfBuilding repository.

tacit birch
#

oo yeah thanks, will do!

hazy fiber
#

yeah its my doing that its wrong, its on purpose to fix IMO a worse issue, I have a planned rework at some point but been busy

rapid pagoda
#

~70-80% of native performance on CPU benchmarks, and the native performance is really good

exotic glen
#

does anyone know if there have been any updates/improvements to js implementations of the skill tree drawing?

worthy cape
#

Whatever poeskilltree uses seems reasonably solid, apart from being a bit crusty on my DPI.

swift shell
#

anyone have a clever way to parse the map name for magic maps? it's easy enough to remove suffixes by splitting at " Map" but prefixes are a bitch.
can't split at spaces because some map names are multiple words long
only way i can think of is to check a list of all possible prefixes and remove whatever is present but that seems inelegant

velvet fog
#

where you get map name from? clipboard or stash api?

swift shell
#

clipboard

velvet fog
frigid nova
#

any asyncio python wizards around? curious if there is some canonical way to reduce this boilerplate:

    async def main():
        await asyncio.gather(*queries)
    asyncio.run(main())
swift shell
frigid nova
#

@swift shell this one is really fun:

Rarity: Magic
Vaal Temple Map

Rarity: Normal
Vaal Temple Map
#

(vaal is a prefix name, so its an ambiguous collision)

swift shell
#

oh thats awful

#

would probably have to make an edge case just for that one

#

unless there are more edge cases 🙃

frigid nova
#

yeah i think you can determine by using tier this league, since temple maps arent t16 this league

#

iirc, when i did this a few leagues ago that was the only collision i found

#

I also used the strategy @velvet fog is suggesting, using RePoE to get a list of all map base names, and extracting from that

swift shell
#

doing it by magic vs normal seems easier since it works all the time

frigid nova
#

no, i think they can both have suffixes

#

although there arent many magic vaal temple maps 🙂

swift shell
#

filtering out suffixes is easy though, you can just split at " Map" and take the first half

swift beacon
#

If it has a suffix you'd have no way of knowing if Vaal is a prefix or not unless you checked the tier or something.

swift shell
#

eugh im already going to have a csv with all the map names in it anyways, might as well search that

frigid nova
#

to be clear, i mean to say Vaal Temple Map of Rust

#

is an actual collision

#

both can be magic

swift shell
#

ohh shit i see

frigid nova
#

there happen to be zero magic vaal temple maps on the server right now

#

so i wouldnt worry too much about it

swift shell
#

yeah probably safe to assume actual vaal temple is always rare

#

anyways is there somewhere i can get like a list of all map names in a csv or something of the sort

#

plan is to have a tool that lets you store notes for each map, and you can press the hotkey on a map to access/edit the notes

#

so i can remember which maps have bosses that i dont want maven on

frigid nova
#
from RePoE import base_items

[base_item["name"] for base_item in base_items.values() if base_item["item_class"] == "Map"]
#

that spits out all the map names for me

swift shell
#

cool cool ty

swift shell
#

wait stupid question about repoe: do i have to manually pull from the repository again to get the latest data?

frigid nova
#

yeah, @woeful sphinx updates RePoE near the beginning of every league start, if you pip install -e then you can just git pull to get fresh data

#

conversely you can use a past git commit to pull data from previous iterations of the ggpk

swift shell
#

i see thanks

worthy cape
worthy cape
#

When the FMT file parses just right 👌

compact isle
#

is anyone currently using these things from GET /character-window/get-passive-skills?
visual_overrides
items[].type
items[].jewelRadius
items[].jewelMinRadius

dense shore
compact isle
#

^ related 😉

dense shore
#

ah

frank drift
#

v nice

velvet fog
#

@fickle yew cluster jewel support in version 5

swift shell
#

hoooooly shit i am turbo disabled

#

why doesnt filename.py do anything even on a one line test file
forgot that its supposed to be python filename.py

grave wren
fickle yew
grave wren
#

If you add a shebang it works

#

E.g.

#!/usr/bin/python3

print("hello")

Will work with just executing the file @jwfiredragon#6969 (if the path to python is correct for your machine)

swift shell
#

no this is in command prompt

frosty nova
worthy cape
grave wren
#

Woops correct although typing on a phone isn't fun either way :D

worthy cape
#

I finally got the block structure of FMT mapped out the other day, decided to naively draw the hideout decorations wireframe with D2D lines. Good <1 FPS 😄

#

Not made for many hundreds of thousands of edges, strangely enough ^_^

worthy cape
#

Huh, there was a client update 11h ago, touched mostly Data and stat-desc bundles.

cold wedge
#

is there a way to get it on my server without having to actually host it somewhere ?

#

ok I got my answers in the search result. Damn I don't want to modify my dedicated serv and I don't want to pay 5€ for a VPS...

grave wren
#

host in on a free tier google cloud service node (or any other node)

#

works just fine

cold wedge
#

I'll try to do that thanks

grave wren
compact isle
velvet fog
astral imp
#

i documented that months ago

#

i believe this was integrated in /api/seasons, it now has a pvp parameter that takes a bool

#

might be wrong though. i cant remember what pvp-matches was used for or where i found it

compact isle
#

it isn't very useful right now but will be updated with the OAuth release

velvet fog
#

any news for OAuth?

compact isle
#

getting a patch for it next week sorted but not sure how much we can enable until the ToS update (still pre-3.14 hopefully)

velvet fog
#

may I add /oauth/token and online status into poe-api document?

compact isle
#

part of next week's update will be better documentation so it may not be required

velvet fog
#

wow

compact isle
#

online status will stay private and we aren't accepting any more requests to use it so best to leave that out imo

velvet fog
#

okay

random geyser
#

Has anyone written a c# library? I am not finding anything after a quick google search. No problem committing any changes or additions back to the community.

worthy cape
#

For what aspects of PoE tools?

#

zensei did a bit or wrapping around the filesystem bits I believe, aianlinb's software are on .NET as well I think.

random geyser
#

Going to start with local stuff in the logs then add api calls later on as I get the hang of it. Appreciate the insight.

worthy cape
#

Ah, that kind of tooldev. Don't really know there, might be something in the channel history.

random geyser
#

C# doesn't seem to be the go to 🙂 Whatever I do I'll end up making available and post back here. Will check the history first.

frank drift
#

filterblade tools are C#, people pretty much use whatever they already know

random geyser
#

Oh yea I'm not worried.

swift shell
#

python question: is there a method that will either let me synchronously send keyboard input, or wait for an asynchronous keyboard input send

#

keyboard.send runs in a separate thread and consistently runs too late for my purposes

#

ok pynput's keyboard input seems to be synchronous rad

swift shell
#

ah epic a thing has decided to fail and i dont know why

#

nvm fixed it pog

fluid wave
sharp monolith
#

Anybody know where to find the code PoB uses to calculate skeleton life? Doesn't seem to be on the skill gem. I was thinking of copy/pasting it to create a variable on Dark Pact to auto-calculate skeleton life with gem level in the config screen.

#

Actually, is there any kind of documentation on where to find variables, functions, etc. used in Path of Building?

worthy cape
#

Not much past the whirlwhind tour in CONTRIBUTING.md I believe.

sharp monolith
#

Thanks!

worthy cape
#

Export tooling populates Data, UI is mostly in Classes, Modules deals with logic.

#

It might be educational to look at some current and past PRs to see what parts of the codebase they tend to touch to achieve something.

sharp monolith
#

Oh, good idea. Thanks!

#

I'm super new to Git, so I didn't even think of that. I've only ever really dabbled in code for personal projects.

worthy cape
#

Knew I'd seen something like this before 😄

sharp monolith
#

Lol

#

Yeah, I just found a link to that from contributing, lol.

#

Thanks so much for helping me find that. 🙂

#

I feel like there are a lot of things that can be very easily achieved once I'm familiar enough with the code.

#

It took about 30 seconds to see the full shotgun-effect damage on my dark pact.

swift shell
#

is there a way to get some sort of unique id for an item without having to access the stash api? ctrl+c just copies the stat text

grave wren
#

for your own items or what exactly are you trying to do?

swift shell
#

yeah for your own items

#

idea is to hotkey on the item, which opens a note page for that item specifically

#

so that you can store harvest crafting notes

grave wren
#

but if its in your stash you're probably out of luck

swift shell
#

hm does that require some kind of authentication though?

grave wren
#

nope

#

(as long as the profile is public)

swift shell
#

wait is that only equipped items? or also items in inventory

grave wren
#

only equipment

swift shell
#

rip

grave wren
#

if you let the user provide a token you could grab stash items

swift shell
#

yeah i guess thats probably what ill have to do

#

seems like a lot of work though

grave wren
#

For the user yes, for you/your script not really

frigid nova
#

stat translation question: beachhead has the stat:
Area contains 6 additional Harbingers
which i believe is from the stat:
map_num_extra_harbingers
which has a stat translation in RePoE
"Area contains {0} extra Harbingers"

#

does anyone know why this discrepancy exists?

velvet fog
#

it was extra Harbingers in 3.13.0.2

#

3.13.0.2

description
    1 map_num_extra_harbingers
    2
        1 "Area contains an extra Harbinger"
        2|# "Area contains {0} extra Harbingers"
frigid nova
#

ah - maybe RePoE just needs a refresher, thanks @velvet fog

compact isle
#

OAuth stuff patch soon, let me know if anything breaks pls VentorsGamble

velvet fog
#

today? document?

compact isle
#

yeah documentation and some stuff that is disabled until we release the new ToS

#

and hopefully no backwards incompatibilities :x

frank drift
#

ToS soon™ I'm sure

compact isle
#

Chris is telling me before 3.14