#tooldev-general

1 messages · Page 126 of 1

compact isle
worthy cape
#

Hrm, has 7b always had that meaning and been about the game files as well? I had thought that “data” there referenced the client’s memory.

frigid nova
#

Yeah, curious if 7b includes programs that read the ggpk

compact isle
#

it would say memory if it meant memory

worthy cape
#

My hideout decoration tool is extremely dead in that case and I’d like the last few years of work back.

#

I guess that I may have read it optimistically then, thought I was in the clear as I never touched the code.

#

Fuck. 3D view and most of the top view is out then, as is decoration visuals in lists. No walkability nor bounding boxes.

#

Intent has been all along to run freestanding of the game but requiring a copy of the pack for data reasons, otherwise only interacting via user-exported/imported .hideout files.

#

Sure wish I hadn’t started building awareness and support in communities lately peepoBlanket

worthy cape
#

As for the new docs, they’re super nice and appreciated. Formatting on mobile iOS is a bit wonky and super zoomed in but is workable.

gilded tree
velvet fog
#

seems backwards compatible without OAuth

gilded tree
#

Oh, I read it like that you should use oauth for all endpoints at some point. Mostly because of the second paragraph

velvet fog
#

seems they are co-existed, you can use POESESSID or OAuth token to get /api/profile.

#

unless they need a oauth scope to use service:psapi (public-stash-tabs)

flint fractal
#

Might be a newbie question but, is there a good way to parse POE items into Json format? Taken from clipboard

simple ravine
#

There's no good way, no.

worthy cape
#

Squint at the text, try to parse and emit what you feel is a good schema, cry.

flint fractal
#

Haha okay, That's what i was gonna do, but i wanted to make sure somebody hadn't made a public library that did this.

rapid pagoda
#

@compact isle

Interacting with our web APIs requires a private service hosted elsewhere to store OAuth client credentials securely.
This seems backwards. Surely the goal should be to avoid having tool creators build a central repository of client tokens? If what you actually mean is OAuth client secrets, you should be specific about that

And I'd like to echo Zao's concerns about 7b. I feel like either there's a disconnect with regards to the definition of "interact with" or this is a giant rug-pull

compact isle
#

not sure what you mean. This is in the context of executable applications and they shouldn't contain your OAuth client credentials. They can locally store tokens if they want since those are short lived

#

zao seems to have been under the misconception that we endorse extracting game data which we do not and never have. We just haven't acted on the accounts engaged in it

#

on the other hand us publishing these documents doesn't mean we're looking to change our existing level of enforcement

simple ravine
#

it's like a mutual silent agreement. don't do nothing stupid, and we won't have a problem

#

@compact isle my oauth thing, can u re-enable it at some point? and add the new capabilities

#

I lost that domain, but I'll let you know with a new domain / name if I make something useful

worthy cape
#

@rapid pagoda I reached out to support for clarifications with my full use case before bed last night and got a very kind reply that they would not allow the use of a tool that interacts with the GGPK nor suggest creating a tool that does so.

I’m fine with it and will scrap this thing, maybe there’s a sliver of functionality that is still possible without.

odd sail
#

@compact isle question on the new character passive tree API return. It seems that the Small Passive Skill stats of a Cluster Jewel are also being reported as stats granted to Jewel Expansion sockets. Is this intended?

#

I see this on a large cluster jewel expansion socket from the retrieved data:

                    [1]={
                        expansionJewel={
                            index=2,
                            parent="7960",
                            proxy="13201",
                            size=1
                        },
                        group="expansion_11",
                        icon="Art/2DArt/SkillIcons/passives/MasteryBlank.png",
                        in={
                            [1]="0"
                        },
                        isJewelSocket=true,
                        name="Medium Jewel Socket",
                        orbit=3,
                        orbitIndex=1,
                        out={
                        },
                        skill="9408",
                        stats={
                            [1]="2% increased Attack Speed"
                        }
                    },```
#

the stats is what's surprising me

#

This is the cluster jewel

        [6]={
            baseType="Large Cluster Jewel",
            descrText="Place into an allocated Large Jewel Socket on the Passive Skill Tree. Added passives do not interact with jewel radiuses. Right click to remove from the Socket.",
            enchantMods={
                [1]="Adds 8 Passive Skills",
                [2]="2 Added Passive Skills are Jewel Sockets",
                [3]="Added Small Passive Skills grant: Staff Attacks deal 12% increased Damage with Hits and Ailments\nAdded Small Passive Skills grant: Mace or Sceptre Attacks deal 12% increased Damage with Hits and Ailments"
            },
            explicitMods={
                [1]="Added Small Passive Skills also grant: 2% increased Attack Speed",
                [2]="1 Added Passive Skill is Expansive Might",
                [3]="1 Added Passive Skill is Overlord",
                [4]="1 Added Passive Skill is Smite the Weak"
            },```
golden bane
#

Before you fine people here came up with a solution for the "technical patch" changes to the GGPK, @carmine merlin reached out to Chris about it. We PoB devs were offered some extra CLI arguments for PoE's Client.exe to dump the .dat files we need. Now following this discussion, it makes a lot of sense why we never got it. Still, there seems to be some internal disconnect around 7b and its relation to third-party applications that directly rely on data from the game files, like PoB

velvet fog
#

any different between dump from Content.ggpk and using Client.exe to dump the .dat files?

half orchid
simple ravine
#

Unfortunately a bit too far for me 🙂

golden bane
simple ravine
#

if you want to present this, a good tip is to wrap wide lines ahead of time.

golden bane
# half orchid I'm doing a talk at Auckland Python Usergroup regarding my project that uses poe...

Looking over the code a bit, it doesn't seem to be very Pythonic, making use of modern language features or to be PEP 8 compliant.
Definitely wrap the longer lines, but most of the offenders are just overly terse in general.
For your API requests for example, the line length becomes perfectly fine once you make good use of Requests instead of inflexibly reinventing URL builders:

    charprof = requests.get('https://www.pathofexile.com/character-window/get-items?accountName={}&character={}'.format(accountname, charname), headers=header).json()
endpoint = "https://www.pathofexile.com/character-window/get-items"
params = {"accountName": accountname, "character": charname}
charprof = requests.get(endpoint, params=params, headers=header).json()
#

Good job with the project in general though. I'll watch the recording once it's live

half orchid
#

thanks for the feedback.

compact isle
#

@simple ravine we aren't allowing access to more scopes until updated ToS goes out, hit me up if I forget

compact isle
#

also if anyone finds anything else weird with the cluster jewels let me know. It took a bunch of copy paste and similar arcane rituals to get working

odd sail
#

@compact isle the orbitIndex on keystones is reported as 1. I was expecting it to be 0, not that it really matters.

compact isle
#

the orbit index is correct, it's used to calculate the angle from the group it belongs to

#

(and a value of 1 for keystones matches the client)

odd sail
#

@compact isle there is one other thing, on the passive tree itself every node has a unique skill ID (which is equivalent to the node ID)

#

Example for 3% increased Attack Speed being:

        [918]= {
            ["skill"]= 918,
            ["name"]= "Attack Speed",
            ["icon"]= "Art/2DArt/SkillIcons/passives/attackspeed.png",
            ["stats"]= {
                "3% increased Attack Speed"
            },
            ["group"]= 383,
            ["orbit"]= 2,
            ["orbitIndex"]= 7,
            ["out"]= {
                "28221",
                "15144"
            },
            ["in"]= {}
        },
        [28221]= {
            ["skill"]= 28221,
            ["name"]= "Attack Speed",
            ["icon"]= "Art/2DArt/SkillIcons/passives/attackspeed.png",
            ["stats"]= {
                "3% increased Attack Speed"
            },
            ["group"]= 383,
            ["orbit"]= 2,
            ["orbitIndex"]= 5,
            ["out"]= {
                "24643"
            },
            ["in"]= {
                "918",
                "48768"
            }
        },```
#

even thought the stat is the same, the skill value is unique

#

this is not true in the cluster nodes

compact isle
#

yep, you can't make that assumption with the subgraphs since they are generated at run-time and not a hash lookup into an existing table

odd sail
#

example:

                    [0]={
                        group="expansion_11",
                        icon="Art/2DArt/SkillIcons/passives/LightningDamagenode.png",
                        in={
                            [1]="11"
                        },
                        name="Lightning Damage",
                        orbit=3,
                        orbitIndex=0,
                        out={
                        },
                        skill="49817",
                        stats={
                            [1]="12% increased Lightning Damage"
                        }
                    },
                    [5]={
                        group="expansion_11",
                        icon="Art/2DArt/SkillIcons/passives/LightningDamagenode.png",
                        in={
                            [1]="7960"
                        },
                        name="Lightning Damage",
                        orbit=3,
                        orbitIndex=5,
                        out={
                        },
                        skill="49817",
                        stats={
                            [1]="12% increased Lightning Damage"
                        }
                    },
#

they have the same skill value

#

okay, that's fine. I work around it

compact isle
#

my advice is to keep track when you're in a subgraph and to generate your own key based on the group key + index

odd sail
#

yeah, exactly what I'm doing

#

I already got PoB working with importing using the new API

#

was just pointing out a few instances of things that surprised me

#

now if you could also provide timeless jewel alterations to the tree in that jewel_data .... 🙂

compact isle
#

hah oh man

odd sail
#

Shouldn’t be too bad ... although no idea. This nodeId { removeStats = { some stat identifier }, addStats = { some other stat identifier } }

compact isle
#

it's bad

#

there's a crazy subsystem that handles where modifiers to stats that were added come from so that when you socket / unsocket jewels it handles each case correctly

#

and the website has no access with any of those systems

odd sail
#

I am don’t know why I assumed that the game server would do a periodic memdump/snapshot of character data for web server availability. Sounds like it’s component based which is more efficient from a performance perspective

compact isle
#

it isn't stored data

velvet fog
#

@odd sail player's oauth character api support bandit and the pantheon, any plan to add it to pob

odd sail
#

@velvet fog I can look. Should be fairly easy. Wasn’t tracking it though.

odd sail
#

@velvet fog so I mis-read what you said. I assumed POESESSID was enough. We currently don't support OAuth / OAuth2 in PoB

#

we could add it but it's a bigger effort than just adding logic for the extra character data. We would need GGG to grant us an oath login (which I believe rory can provide if appropriate need is communicated)

#

Issue is that we are not a web-based service

worthy cape
#

Would that be restricted to the player's own bandit/pantheon choice?

minor charm
frank drift
golden bane
#

@fickle yew @velvet fog @chrome topaz @earnest radish @silent vapor
Here are the updated and final file structure changes for PoB 2.0.
These changes will be live on the dev branch soon.
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
runtime-win32.zip -> removed, extracted to runtime/
tree-*.zip -> removed

rapid pagoda
blazing rover
#

whew that was a scary moment. I had a bug in a script I was using to socket watchstones in the Atlas screen. Unfortunately I only opened my inventory and it came close to hitting the button to delete my 2ex watchstone in HO

#

guess I need to include some pixel tracking to make sure it's in the right screen

frigid nova
#

@compact isle not sure if this is intentional or not, but i believe currently https://www.pathofexile.com/character-window/get-passive-skills returns no x-rate-limit in the response header.

worthy cape
#

@minor charm for me the target market of actual players factored into my decision, as they are more likely to get into trouble when something malfunctions like some file locking issues or other unexpected interaction with the patcher/game. A developer working offline to prepare a bit of data for a tool or service is a bit different and is unlikely to cause support load, create bad PR or trigger anti-cheat or whatever.

#

(this all my own reasoning)

#

There hasn’t really been any user-facing tools like this outside of asset replacement, asset stealing, and I assume cheats historically, so it’s in a bit of a weird place.

#

Say something changes that breaks part of my tool, may it be something common like specs for base item types or world areas or something more core like file formats for models or tiles or topologies, my tool is dead in the water and there would be negative energy toward GGG from at least part of the userbase even if told that the tool is running on pure hope.
Worst case with a sufficiently popular tool is that it would actually affect what changes might be made to what is effectively implementation detail.

#

The mod manager for Beat Saber has left a bit of an impression on me in that regard 😄 :

velvet fog
#

change the name Mod to Wiki or any other 3rd Party Tool, it seems to be fine too

minor charm
#

The most disheartening thing to me is that 7b is grouped under written permission and you reached out to get that but they declined.

#

I hadn't thought of the repercussions of the end users. But yeah the end users would be super salty if they got account banned or something because your tool didn't comply with the ToS.

#

Was there much negativity towards GGG from the Awakened PoE Trade API rate limit saga? I thought everyone sort of understood the tool was doing something it shouldn't ?

worthy cape
#

Don't know if there was much explicitly around that and the Chaos Recipe thing, albeit I'd reckon that such sentiment probably existed in particular communities and the overall instability definitely had a negative effect.

worthy cape
#

Worst thing about this is that I have to come up with names for new projects. brittlHappy

hazy fog
golden bane
#

Fancy colour you got there

dense shore
#

Wasnt there much bigger problem this league than just artificial api traffic from tools?

molten basin
#

is there a addon/mod that makes a sound when you hover over items in your inventory, sort of like a "clank" sound, is that even possible? (not sure if its ok to ask here)

frank drift
molten basin
#

i see

stoic locust
#

only way i can think of doing that is if its easy to read client memory (assuming the tooltip text is in one accessible location ) and then having a program that plays a sound of your choice when it sees a specific bit of text

alternatively: something that just looks at what is in your clipboard when you Ctrl + C with Path of Exiles as the active window and alerting when certain text shows up

worthy cape
#

@molten basin The only methods that you have for obtaining information is for the user to explicitly initiate an action upon which you can invoke Ctrl-C to get information about the hovered item via the clipboard, or attempt to OCR a screendump.
You cannot do anything continuously and you may not read game memory nor network traffic.

#

As Jaz second paragraph touches on, that's how Awakened PoE Trade implements almost all its features like map filter alerts, price checks, etc.

#

Interacting with the process memory is very against the ToU.

molten basin
#

I see, thanks for the response fellas

worthy cape
worthy cape
#

Datastore protip - despite some claims online that LMDB does incremental growth of the file on Windows, it's only ever in the master branch and never hit a released version.

#

I found this out the Fun Way with a 100 GiB file in my user profile and a bunch of gnarly code that I now have zero use for.

simple ravine
worthy cape
#

I've dug myself into a corner a bit when it comes to naming PoE releases. I had plans to use things like the "build ID" from Steam to uniquely order them instead of messing around with guessing x.y.z.w versions, but they're not too easy to tell, and things like preloads don't have them.

minor charm
#

I'm guessing builds are not 1:1 with patches ?

worthy cape
#

They are, a build is a grouping of depots with particular manifest IDs

#

Well, they're not 1:1 with user-facing changes in version numbers as there's hotfixes and undocumented updates.

minor charm
#

ah ok

#

Just peeked at the client.txt the only thing in there is the current patch version via url

worthy cape
#

The thing I'm toying around with now ingests a release's DAT files, deduplicates them and stores a file list per imported release.

minor charm
#

diff list per release ?

worthy cape
#

The idea is to have some before/after relations between builds and tooling to deduce spec changes.

#

Intelligent use of language variants and 64-bit/UTF-32 versions of DATs to guess column types and extents, as well as datatype guesses.

#

"hey, this column here is 99.5% equivalent to that column previous release, it's probably the same"

#

It's not major problem for my personal use as I know build IDs for everything I care about and can just make something up for the preloads; but if sharing the resulting DAT spec it kind of helps if there's an universal way of referring to versions.

#

Historically I've used the manifest ID for the content depot, but those have no innate ordering and are unrelated to game versions.

#

(PoE builds are these days made up of three depots; Content, Windows Binaries, and macOS Binaries)

#

@minor charm In any way, the spec helper idea has been bubbling around my mind for a while but I've had more immediately productive things to develop until recently 😉

minor charm
#

That's pretty interesting and fair bit more complex than what I was imagining lmao

#

I'd be trying to keep everything as similar to upstream if it was my project

worthy cape
#

In the past on the Rust implementation I did things like run a gang of probes against the possible columns in a single DAT file, trying to tell if it could be a legal float, a number small enough to be an foreign key, a string reference, a possible list of something, etc.

#

In that case I rendered the output to standalone HTML and broke my browsers 😄

velvet fog
#

how to determine a legal float?

minor charm
#

brrt haha

worthy cape
#

In that case, I ruled out anything NaN and anything sufficiently huge.

#

Denormals and very tiny numbers are still common, unfortunately.

minor charm
#

manifestID is from Steam yeah ? not the game client ?

worthy cape
#

Not that I think that DAT files have floats anyway.

#

@minor charm Yes. A revision of a depot's content has a manifest ID. An app may have multiple depots associated. A build is an app nailed at specific manifests for each depot.

minor charm
#

gotcha

worthy cape
#

Build IDs are increasing numbers. Manifest IDs are randomly generated.

velvet fog
worthy cape
#

All of this utterly irrelevant if you use Standalone and the patch server, of course.

#

As long as you can invent your own order numbers the use of the tool is internally consisted for a specific dev, but when trying to share the specs the actual numbers may matter.

#

Like if you go "this spec for BaseItemTypes.dat applies to builds 6091145 through 6210913", that is meaningless for someone that numbers their imports by date or version or imaginary numbers.

velvet fog
#

However, most of the historical data in poe are not of high value

worthy cape
#

I guess not for most.

rapid pagoda
velvet fog
#

Patch 3.13.2.1 1.72GB, small patch

undone turret
#

I wonder what kind of tech is Nvidia and Microsoft using to show overlays in exclusive fullscreen games without minimizing them or changing anything. Windows Gamebar and Nvidia Filters work in fullscreen poe, but software like trade price checking do not.

worthy cape
#

Our type of overlay is a somewhat transparent application window showing on top of the game.

#

Their type of overlay is the inside-the-process kind of thing, quite likely sneaking in via the compositor or the user side of the driver.

undone turret
#

ah I see. interesting thanks

worthy cape
#

I like how ref|string and ref|list| stands out rather clearly when comparing different language DATs, and also hint to the shape of dat vs. dat64.

#

(string of ! and . indicate whether that byte of the fixed-width fields are identical across language versions, assuming that rows are in the same order)

tawny agate
#

Hi, just saw API application are handled manually by mail
Someone know if it's usually fast?
It's less important to me if I can't prepare my app before the league launch 🙂

worthy cape
tawny agate
#

I am interested by the private stash API, I guess I will have to wait

worthy cape
#

You could always mail and find out 🙂

tawny agate
#

I will try, for science 🙂

worthy cape
#

^_^

tawny agate
#

Just saw on the last post
Rory Rackham (who was in charge of the development of the Ultimatum expansion)
I guess my mail will not be p0

velvet fog
#

Registration is currently handled by us directly at our discretion. You can make a request by emailing roryv@grindinggear.com with your details and requirements. and /api/character and /api/stash are still waiting ToS update

compact isle
#

I'm a different Rory 😄 but unfortunately I don't have much time to handle requests right now with the short time before release

tawny agate
worthy cape
#

Enter the Roryverse.

hazy fog
#

PepeLaugh roryv != roryr

worthy cape
#

I wonder if anyone asked @compact isle on whether the trade site could support things like the itemized temples, or if it'll be a bit arbitrary what you can search for and not once 3.14 comes 😄
Sounds like it could be Great Fun.

young osprey
#

Well, there was not support for searching for captured bosses in itemized rituals this league, so maybe there will be the "great itemization update"

worthy cape
#

Indeedily.

compact isle
#

yeah it'll be easy to search rooms in temples. The reason I didn't put the effort into captured bosses is because they were only relevant for challenges that were easy to complete anyway

frank drift
#

I had to do one of the maps 10 times to capture the boss marauderAnger

rapid pagoda
#

Run the scraper on a public cloud instance. A lot of providers have unlimited ingress bandwidth... 🙂

woeful slate
#

is it possible to know if poe keyboard input goes to a textbox without reading memory?

worthy cape
#

Nope.

swift shell
#

woohoo my app being kinda slow to start isnt my fault

rapid pagoda
safe pulsar
#

Hey I'm a Final year Comp Sci student using an apple mba (m1), keen to help up for tool dev tests/ mac compatibility stuff

#

with the 3.13.2 release, I've been messing around w/ POE on my mac.

rapid pagoda
safe pulsar
#

I'll check it out and let you know

worthy cape
dense shore
#

So ggg is manned by clones of Rorys and Marks marauderthinking

worthy cape
#

I believe they have some dupes of Chris and Ash as well.

warm matrix
#

Hi everyone, sorry stepped away from a POE league data visualization project i was working on.... and came back to see that all the API docs have disappeared and seem to be tracking a possible change to request limits??? I was wondering if there are any GGG posts or what the latest changes to the API is???

worthy cape
#

@warm matrix Which docs were you consulting?

warm matrix
worthy cape
#

Ah, go up one directory then for the new pages.

warm matrix
#

gotcha! Thanks a lot!

swift shell
#

what the fuck

swift shell
#

i mean it is a spawn weight 0 mod

#

but even so that should 100% be a suffix, especially given that all other curse map mods are suffixes

compact isle
#

so random update, the atlas isn't being shuffled in 3.14 so the map generation parameter won't be changing

rapid pagoda
#

Our Standard stash tabs thank you

compact isle
#

certainly cuts down on the amount of manual slogging I have to do with maps too 😄

#

ah also ctrl+C-ing items in-game will get advanced info if that button is pressed

#

I'll try to get more details and examples uploaded this week

frank drift
#

aka ctrl+alt+c? nice

compact isle
#

yeah, unfortunately it isn't in like JSON or anything but I managed to sneak some formatting in there after it was implemented so that it shouldn't be too painful to parse

frank drift
#

if it's possible people will do it

frigid nova
#

@compact isle will the advanced info also be present on the stash river?

compact isle
#

making a tool for yourself (no permission to use APIs on behalf of other accounts) doesn't require that

#

so essentially client_credentials-only clients are in a different space, I'll look into clarifying that in the docs

rapid pagoda
#

might also want to specify which "client credentials" you're referring to in that phrase -- is that referring to the client secret (single value associated with the application), the access token (per user), or both

compact isle
#

it says OAuth client credentials, so it means your client secret

#

if it meant access token it would say that etc etc

#

we've been over this before

#

I'll change it to this:

Interacting with our web APIs on behalf of other users requires a private service hosted elsewhere to store your OAuth client credentials securely. Embedding your client secret in the executable in this case is not allowed.
rapid pagoda
#

And that answers my question as well. "Credentials" isn't a standard piece of OAuth terminology so it could be interpreted in unintended ways

compact isle
#

it isn't "credentials" though it's "client credentials" which is a standard piece of OAuth terminology

fickle yew
compact isle
#

oh no I was too late sadge

dense shore
fickle yew
#

It's been on my todo list for 10 leagues, so I think it was time anyway 😄

compact isle
#

they'll definitely do a shuffle again, those game designers love making complex things shakes fist

dense shore
#

Did you update cluster jewel importing to Ninja yet?

#

But Man does the shuffle keep mapping fresh

#

"oh boy cant wait to spam my t9 atoll again this league" that some players felt mandatory to do for some reason

compact isle
#

every time I see the map tier list on the bulk exchange I die inside a little more

dense shore
#

Wait ppl still trade for maps

worthy cape
#

I think I bought at least ten different ones on trade this league for atlas completion.

#

If you're feeling like there's too little churn, maybe organize them by watchstone count instead of tier so I don't have to consult https://oriath.net/atlas/ so much 🙂

(I would incidentally trade my left Vaal orb for a map stash tab in-game that grouped by watchstone count instead of tier)

frank drift
#

watchstone count? like conquerors completed?

worthy cape
#

Like how the top tier of a map is the four-stone version, the one below the three-stone version, etc.

#

It's always a major chore to sift out the 3-stone T14s every single league when trying to do content that cares about tiering like conquerors or 10-ways.

#

For that kind of content, the actual tier is irrelevant, it's how stoned it is that counts.

dense shore
#

I avoid 3 stone outer sectors like its bubonic plague

worthy cape
#

I mean, get rid of the "false" T14 maps once you only care about 4-stone ones. For progression it doesn't matter quite as much.

#

I don't know where the bogus maps come from, but they sure end up in my stash tab over time.

#

Might be drops that are untied to atlas state or something.

dense shore
#

I've not had any of the bogus maps if I don't mistakenly have 3 watch stones on outer sectors

#

from any drop source other than horizon orbs.

worthy cape
#

Maybe I was running into the same old set every time through when sifting out maps for Prove Your Worth, I was under the assumption that they somehow dropped from something so it would be pointless to remove them.

worthy cape
#

Gah, the end time for the Ritual league in the API is one hour off from what's said in the news post.

grave wren
#

Timezone issues maybe?

worthy cape
#

News post is unlocalized and posted after most countries transitioned, so a bit weird.

gilded tree
dense shore
#

Which of the 3 times you mean?

fluid wave
#

Would this be a good place to look for freelancing engineers to work on some PoE tooling?

hazy fog
#

sexy spambots Pog

worthy cape
#

@fluid wave Not sure if people are overly interested in bringing money into what's mostly a hobby.

#

Collaborators and advice, maybe.

hazy fog
#

I don't think we wish to see our platform used for monetization

fluid wave
#

It’s for finishing an open source tool that I don’t quite have time for anymore 😦

hazy fog
#

change word from freelancing to bored

fluid wave
#

?

hazy fog
#

a bored engineer might help you for free

fluid wave
#

Payment still stands 😄

#

Don’t expect anyone to work for free, even if it’s open source

worthy cape
#

So what's your tool doing?

fluid wave
#

Currently it’s aimed at following streamers characters when they are online, scraping their character data and creating like a timeline for their progress. Could of course be expanded to any account, but that’s the idea

worthy cape
#

Kind of like ninja but more oriented to following the evolution of a single character?

fluid wave
#

Currently I use it to just see like “how has their character changed since I last watched?”, so I diff their character state

#

Yeah

worthy cape
#

Definitely not my realm of competence.

fluid wave
#

Got some other functions planned too but got a new job a few weeks ago and my energy for coding is consumed by it 😅

worthy cape
#

ar-be-ta!

fluid wave
#

Jobb jobb

worthy cape
#

I had some plans to work on some tooling between leagues, but 40 challenges ran late and then I spun up Doom Eternal for relaxation instead 😄

fluid wave
#

But yeah so, I don’t believe I can find anyone to help me get it to a functional state without paying, so here I am 😬

#

Maybe I’ll check with the Exilence guys, they are Swedish too

worthy cape
#

There's a bit of overlap with race tooling, but somewhat different goals and timespans.

fluid wave
#

Poe-racing does similar things but not for the character journey

grave wren
#

i am pretty sure ninja planned something like this at some point

#

question is if its still on the roadmap

fluid wave
#

Maybe I’ll reach out to them then

#

Hope we’re not duplicating work 😑

young osprey
#

poe ninja does have history mode, where you can see the state of characters at different points in the league. I am not sure what the granularity of it is

frank drift
#

roughly every day for the first week (I think it takes ~36 hours to cycle through all characters?), then every week

fluid wave
worthy cape
#

Can't wait for your thing to notice someone gear/gemswapping regularly 😄

fluid wave
#

the diff between unequipping a 6L item is around 1k lines 😄

#

@frank drift That's for an entire ladder right?

heady scaffold
#

New TOS changes regarding the site and API

#
Reverse engineer, de-compile or disassemble the Website, Materials or Services or seek to establish the technical processes, operations and communication protocols of the Website, Materials or Services through any means, including without limitation by reference to the input or output of the Website, Materials or Services or the internal structure and workings of the Website, Materials or Services.``` 

and 

```Website APIs: Grinding Gear Games may, from time to time, make available application programming interfaces to enable third-party sites and services to access certain in-game data via the internet ("Website APIs"). Grinding Gear Games may modify, add, remove, replace or upgrade any or all of its Website APIs (including the data fields of those Website APIs) at any time at its discretion. You must comply with Grinding Gear Games' technical documentation and policies (as published and as updated on the Website from time to time or as otherwise notified to you by Grinding Gear Games) regarding use of the Website APIs ("API Policies"). Without limiting the foregoing, you must comply with the Website API call limits set out in the API Policies or as otherwise notified to you by Grinding Gear Games, and not attempt to circumvent those limits.```
dim stream
#

I feel this is more aimed at those blanket category "private indexers and notification traders"

frigid nova
#

to clarify, under 23, should i not be analyzing and/or reporting any of the trade website API responses?

dim stream
#

the wording does imply that but it overreaching giving them the ability to apply it how they want

#

it leaves the door open basically for them to use it for a lot of things

frigid nova
#

im curious because i often post related to that API on the forum, but if it is now against TOS, i should stop doing that

dim stream
#

I am sure that it will not be applied in that manner

#

but it does the leave the door open to say... "Did you break the TOS to figure out this bug"

#

like you found a bug while you are doing something to dissemble the API and you simply reported the bug

#

this gives them the ability to check and if found you were breaking ToS to find the bug, they can use it on you

#

it does very much feel like it would diminish bug reporting definitely

frigid nova
#

@compact isle could we have clarification if using the trade (fetch/search) API is against ToS now?

civic crane
#

conspiracy: in the league after Ultimatum trade site will get item import using new ctrl alt c, price checkers will be blocked by user agent 👀

compact isle
#

that section is mostly targeted at people asking if they can reverse engineer the game protocol "for education"

#

the website part is to help us move people to OAuth instead of using their POESESSID to find internal website APIs we don't want third parties using

#

to my understanding most of the tools that interact with the trade site do so without a user session

heady scaffold
#

thx for clarify Novynn, btw cant wait for the new ctrl+c/v 🙂

compact isle
#

the problem with account-based keys is that then we lose the ability to monitor / manage requests coming from a specific tool which in the past has caused a lot of server stability issues (downloaded ladder tools etc)

#

I do understand the niche for that kind of auth but yeah we don't have a good solution to that right now... and if we did it it would need a heavy-hand on the rate-limits

broken cloud
fluid wave
#

Cool, thanks @broken cloud!

#

I probably need to figure out the slot thing as well, right now it's just diffing two arrays which ends up wrong if the snapshots are too far apart 🙂

#

But the plan is to be able to diff two timestamped snapshots with eachother and see which items have been updated/created/deleted etc

grave wren
#

What's your target language or project you want to make, an API? A website?

fluid wave
#

It's made in Golang and is for browsing in a web UI

#

Spent most of my time handling marshalling of the get-items/get-passive-skills APIs and the UI development so far

oak estuary
#

This is a long shot, most likely, but is there a field/flag to be aware of if a stat is scalable with buff effect? I know "buffs" are kind of tribal knowledge right now, was going to clear that up some. Notably, some aspects of guard skills are affected and some aren't

rain osprey
#

are horticraft station inventories visible to the api provided the proper permissions or is it just stash/inventory items?
I was thinking of building some tool for this small private league I'm gonna be playing that keeps track of people's drops/items/currency/etc and want to know if there are any limitations before I dive in.

silent tree
#

i don't think they're stored on the api anywhere to my knowledge

#

esge made a tool last league that did some ocr (if i remember correctly how it worked) to convert a picture of a horticraft inventory into text and that's about as far as it's got

#

it would certainly be useful if they were though

worthy cape
#

There’s no access to them at all, in my community we just had a bot with commands to add/remove/search crafts, no OCR shenanigans.

dull roost
chrome topaz
#

thanks, I shall yoink that for pob.party

wheat pewter
#

thanks king

frigid otter
#

Is there a tool/utility to consolidate multiple pastebins?

twilit silo
hazy fiber
#

its just the tree data

dull roost
#

read the text file in the zip, it tells you what to do

#

@twilit silo

twilit silo
#

yeah found it

#

Ty

frigid otter
#

So thats a no on the tool/utility to consolidate pobs from multiple pastebins?

frank drift
#

what do you mean by "consolidate"

frigid otter
#

So I go to a forum thread and they're like "I have these 9 pob links for different things" and they're all single tree and single gear set, and I want them all in one savefile

#

some creators are really good and give you all that prepackaged but I just want a way to make it easier to consolidate them when they don't

frank drift
#

never heard of anything like that, but would be technically feasible at least

frigid otter
#

Great, how do I make that?

frank drift
#

you would have to parse the pastebins first, probably by loading them into headless PoB and turning them into savefiles

frigid otter
#

Isn't it all XML?

frank drift
#

then you might be able to parse the savefiles more easily and move the data around, never looked at a PoB savefile

hazy fiber
#

convert the pastbin contents to xml, and just add it to each other?

#

youd have to rename the trees/item sets so theres not multiple called defualt, and the gems would be an absolute mess

frigid otter
#

and skills

#

skills have their own containers, but its all xml, right?

#

or at least I can take the pastebin and easily convert it to xml

grave wren
#

Yes it's all in the xml

frigid otter
#

fantabulous, y'all are a bunch of peaches

hazy fiber
#

like I said only thing you really need to lookout for other than configs (which should be the same based on your use case) would be renaming tree/item sets

frigid otter
#

I'm just gonna let you input a label for each pob you input, have up to 5 designated to browse and one target, so it'll be messy but I'll get a prototype going before friday noon

tacit birch
#

If anybody wanted to test out new fireburst numbers I did these hacky changes to data/skills/other.lua (Only changed level 20 entry)

lusty glade
#

Anyone here familiar with the "Proxy Server" option in the PoB community fork? What it does, what it can be used for? Thanks

worthy cape
#

@lusty glade It's a common web thing for when you can't connect directly to the internet and need to talk to a HTTP(S) proxy inbetween.

#

A proxy server is a service that takes requests and forwards them onward, returning the response to the original caller. You typically see them on corporate and academic campuses, to restrict and monitor traffic.

#

For development you can use them for fun stuff like intercept, log, and modify requests and responses.

carmine merlin
#

PoB 3.14 tree update is out btw

twilit silo
#

So my POB community fork just crashes when I try to open it. I have re-installed it a few times now. Anyone know what my be causing it?

#

Looks like I am missing config file.

worthy cape
#

You may want to file an issue on the github repository for the community PoB fork.

#

The configuration file is a red herring, it's one of those things that's created on demand as you may alter things and is not an error. Your fault lies around enumerating and creating the OpenGL context.

#

(this place is not for end-user support)

#

A perfectly normal startup of a freshly installed 2.0.0 has:

quiet elk
#

Does anyone know where to find the manifest.xml in pob branch

#

I can't find the file anywhere even in my doc

dull roost
quiet elk
#

@dull roost it's not in my non-portable version for some reason

dull roost
#

and you're looking in the folder the executable is?

#

specifically, not the shortcut

vague aurora
#

is there an api for poe forum or do i have to scrape it by myself?

velvet fog
vague aurora
#

Do you know of any limitations about scraping the forum without GGG gonna come and slap me :-D

velvet fog
neon token
#

hey ppl.chaos recipe stop working for me ,anyon can help please ?

frank drift
neon token
#

i have update hours ago to last version,1.22

#

is strange , i have use it before ,and today i was trying to see if everthing is fine for next league and this happens

frank drift
neon token
#

oh let me check.ty m8.

tawny agate
#

Copying an item's description with Ctrl + C now also copies the Item Class.
Do we already know if it's in the first line? Would be a great help to write efficient parser

worthy cape
#

Novynn was talking about possibly having examples, but not sure if that panned out.

frank drift
#

since it wasn't in the "item and filter" post presumably not

primal schooner
#

anybody here work on Laravel regularly?

simple ravine
#

*crickets*

velvet fog
#

@worthy cape wake up~ torrent coming

velvet fog
#

Bundles2/Data/ is clean

minor charm
#

@primal schooner yes from time to time. I've got a PoE API client that registers as a service provider for Laravel

#

still need to do some integration testing on it though

#

It previously worked fine from the CLI but I haven't updated it to include the new changes that they released few weeks ago.

safe pulsar
#

@rapid pagoda pogo seems to work for me on an M1 mac

rare jasper
#

you'll regret that later...

worthy cape
#

@rare jasper Since the tech patch I don't ever plan on playing for league start, but will probably have a nice nap in the afternoon after work ^_^

rare jasper
#

by all means carry-on then

#

4am is a time best reserved for sleeping imo

velvet fog
#

@worthy cape sorry for poking you at 4AM

copper solar
#

every time I hover over a passive point I get this error, really dont want to remake everything after working on it for awhile. Can it be fixed?

worthy cape
carmine merlin
copper solar
#

oh cool 🙂

viral panther
#

waiting on that stream LI 🙂

carmine merlin
viral panther
#

oh sounds good, i was expecting gem info from the torrent but maybe I've confused myself

velvet fog
#

.dat deletes, but .dat64 is inside, working on it

carmine merlin
#

Same stuff included as last league @velvet fog or not sure?

rapid pagoda
velvet fog
#

poedb should be updated soon

copper solar
#

I did the exact same build and when I was done crafting it started happening again 😦

copper solar
#

no 2.1.0

carmine merlin
#

We just pushed an update

copper solar
#

checkin rn

#

yay its fixed

#

ty

carmine merlin
#

Good to hear

hazy wigeon
#

@carmine merlin Heyo, query: How do you go about calculating/getting the stats for minions? Im looking over the Poedb info for Spectral Wolves and trying to figure out how that data could be translated into the stats for PoB's spectral wolf minion.

odd sail
#

it's pulled out of the grantedEffect

carmine merlin
#

The skill is in other.lua if you want to modify with the level 25 values

odd sail
#

name SummonRigwaldsPack

hazy wigeon
hazy wigeon
# odd sail name `SummonRigwaldsPack`

Im not sure what you mean, are you referring to the added phys buff from the wolves? Im trying to find out the base damage of the wolves themselves

#

Like for the lv 20 wolves, where did this value come from? Where was it found/located/datamined, is it on poedb somewhere?

carmine merlin
#

Datamined

odd sail
#

well, datamined was min physical 8, max physical 16

#

for level 20

hazy wigeon
# carmine merlin Datamined

is there an open source tool for this process at the moment? Id like to go through the steps to extract that info and see how it works now

#

poedb doesnt list the base dmg values of minions anywhere then, does it?

carmine merlin
hazy wigeon
#

This is all I can find on poedb which doesnt really explain where it came from or how it was calculated, nor does it corrolate to the values PoB gives at any level

minor charm
#

PyPoE for python, libggpk/2 for C# both on github

#

there is a list of tools on the poe wiki

#

I dunno how up to date it is

hazy wigeon
#

is there a spot often that folks dump the output of the datamine for perusing, without needing to run the extraction yourself?

oak estuary
#

poedb

frank drift
#

poedb riffLul

hazy wigeon
#

_<;

#

Wait does poedb have raw dumps somewhere then?

#

Im getting the impression whats shown on the site itself is calculated values from the raw stuff, do they have the raw values somewhere?

frank drift
#

nah, joking

viral panther
hazy wigeon
rapid pagoda
velvet fog
hazy wigeon
viral panther
#

oh they moved it

#

must be basetype for new unique

rapid pagoda
#

that'd explain the weird flavour text

worthy cape
#

Got to love few-line-fixes 😄

odd sail
#

@compact isle you guys have a typo for Helm Enchantments for Lancing Steel

Lancing Steel has 20% chance t ocount as consuming Steel Shards without Consuming them

for both Merciless and Endgame

odd sail
#

@compact isle did you guys change statInterpolation and how it's used?

compact isle
#

I don't know about that sorry

carmine merlin
#

@velvet fog did the stat interpolations change. We can't export a bunch of things from the new ggpk

velvet fog
#

format changed

#

ManaCost removed

odd sail
#

new table called CostTypes.dat

#

middle one is a key to another table it seems, just not sure where yet

oak estuary
#

It's Stats.dat

#

@velvet fog do you export every skill? Noticing some mana cost oddities for some levels of some skills, like Animate Weapon is 0 for the first few levels, wondering if you saw the same

carmine merlin
#

@velvet fog did you have to change anything to get gem quality stats to work again? It's the only thing not working for us now

ebon kernel
#

oi lads - does anyone know if new auth API will cover different regions (and potentially platforms)? speaking about na/eu vs kakao client and pc vs consoles

timber path
#

Am I correct to assume the torrent doesn't include all dat files yet (such as BaseItemTypes.dat, etc... ?)

worthy cape
velvet fog
#

@carmine merlin same as before

dense shore
#

Thought that might be useful pin for anyone who looks into this stuff.

timber path
worthy cape
timber path
worthy cape
#

Yeah, even if you try piecing things together from languages and different bitness/stringwidths it's still a bit lacking. Nice preview of the specs you might have to touch tho.

#

@timber path If you're using my Bun thing, there's a version built today linked earlier that handles GGPKs like the preload has that has no FREE blocks.

timber path
# worthy cape <@!102817123520217088> If you're using my Bun thing, there's a version built tod...

Thanks for the heads-up on that. I believe one of my tools is still using one of your dlls though. The rest of the bundle & dat reading was moved to c# and improved upon to allow reading of dat files for which specs/definitions are lacking/incompleted/out-dated. It currently does the job, but I simply need all Stats.dat, BaseItemTypes.dat (and some other) files for all languages, so torrent's data won't cut it for me.

worthy cape
#

Ah, OK, all changes this year is just resiliency when files are missing.

odd sail
#

@velvet fog do you know what changed in ModType.dat?

timber path
#

Also keys0 seems to be removed from Mod.dat ? any more info on that? just remove it? or is it replaced ?

civic crane
#

1124189575-1131486309-1090698076-1222941913-1172554100 and now for Ultimatum

rain pasture
#

anyone have the Tainted Oil image on hand?

granite sable
rain pasture
#

so smol

#

ah, big boi spotted. ty

civic crane
#

@compact isle any reason to make double pseudo prefix?

compact isle
#

nah that snuck in, I'll revert it but it'll be slow to expire from various caches

#

do you rely on it having the (pseudo) prefix on item results?

civic crane
#

nope

simple ravine
#

ok two comments...

  1. Why on earth wouldn't you proactively migrate account data?
  2. Why on earth aren't there integration tests catching these things, as in measuring increased time taken per test from baseline, on each PR.
#

gg.

fickle yew
#

Easy to find an unexpected bottleneck with massive load that didn't show up in other measurements. Hard to create realistic load.

compact isle
#

not related to tool development 😄

fickle yew
#

That too 😄

worthy cape
#

I love the imagination of the powers that be, always finding something new for league start.

#

@simple ravine Lots of work you don't have to do if you are lazy about it.

pseudo ocean
#

Any reason why ctrl+alt+c gives you old style and new style data?

Rarity: Rare
Bramble Bite
Driftwood Wand
--------
Wand
Physical Damage: 5-9
Critical Strike Chance: 7.00%
Attacks per Second: 1.40
--------
Requirements:
Level: 16
Dex: 27
Int: 30
--------
Sockets: G B 
--------
Item Level: 7
--------
9% increased Spell Damage (implicit)
--------
11% increased Spell Damage
Adds 1 to 4 Lightning Damage to Spells
+1 to Level of all Physical Spell Skill Gems
15% increased Stun Duration on Enemies
+87 to Accuracy Rating
Item Class: Wands
Rarity: Rare
Bramble Bite
Driftwood Wand
--------
Wand
Physical Damage: 5-9
Critical Strike Chance: 7.00%
Attacks per Second: 1.40
--------
Requirements:
Level: 16
Dex: 27
Int: 30
--------
Sockets: G B 
--------
Item Level: 7
--------
{ Implicit Modifier — Damage, Caster }
9(8-12)% increased Spell Damage
--------
{ Prefix Modifier "Apprentice's" (Tier: 8) — Damage, Caster }
11(10-19)% increased Spell Damage
{ Prefix Modifier "Lithomancer's" (Tier: 1) — Physical, Caster, Gem }
+1 to Level of all Physical Spell Skill Gems
{ Prefix Modifier "Humming" (Tier: 9) — Damage, Elemental, Lightning, Caster }
Adds 1 to 4(4-5) Lightning Damage to Spells
{ Suffix Modifier "of Steadiness" (Tier: 6) — Attack }
+87(80-130) to Accuracy Rating
{ Suffix Modifier "of Impact" (Tier: 5) }
15(11-15)% increased Stun Duration on Enemies```
rapid pagoda
#

hrm, that seems… excessive

pseudo ocean
#

I'm not in the game atm (queue...) so I got this from a friend, hopefully he didn't mess it up. So yea seems excessive as ctrl+c is still giving the old style

#

btw I'm definitively happy with the advanced data. Makes life so much easier

simple ravine
#

@worthy cape @fickle yew not that unrealistic imo, pretty common where I come from

#

test automation catches a lot of things

grave wren
#

^test what

hollow knot
#

there's some bug with ctrl-c, it seems to append to the clipboard

#

tried spamming and got a clipboard with 3-4 times the text

worthy cape
#

@rapid pagoda Upside of things, doesn't break old tools just because you hold another key.

#

Like say you have Ctrl-Alt-W for looking something up on Wiki, that'd count as Alt I presume.

simple ravine
# grave wren ^test what
  1. unit testing - business invariants/logic
  2. integration testing - transactions, processes
  3. load testing

fairly common to have a baseline of time taken, and warn (or decline PR) when commits are increasing from the baseline significantly.

pseudo ocean
worthy cape
#

On-topic for the channel - does the new Fragment tab have any API differences, or is it the same with differently-rendered slots?

compact isle
#

same

#

I passed the ctrl+c stuff along to the client folks, seems like if you alternate between advanced mode and not it will just keep appending

rapid pagoda
#

🤨

hollow knot
#

it seems to store the values on the item somehow, if i ctrl-c another item it gets just that one..
if we then ctrl-c an item we spammed earlier it gets the all the duplicate item 😄

wind garden
#

rough day for servers

simple ravine
#

hmm, got in. can't create character... "Operation timed out"

wind garden
#

auth server seems to be down

simple ravine
#

ya, now it's saying "operation requires the account to be logged in" instead of "operation timed out"

worthy cape
#

HugOps to the team \o/

#

Popcorn to the ones outside the blast radius.

lean spindle
#

Hi all o/ I'm working with PyPoE Exporter atm and edited the spec for AtlasNode.dat to match the actual row size post-update, however I am now getting an error that I am unfamiliar with, and am unsure what the root cause might be.
This does not occur for all files. (WorldAreas.dat exported successfully.)
Anyone know offhand why this might happen? (err log in next message)

worthy cape
#

Not sure how PyPoE handles offsets out of bounds, or specs that might be wider than expected.

#

Hook up a debugger maybe?

lean spindle
#

worth doing, will check back if I find anything new. ty

woeful sphinx
#

those errors could come from ggg removing fields in a dat file, which can lead to misaligned fields if the spec isn't updated correctly.

lean spindle
#

Interesting, I'd considered this but I thought that would display as a specification row size error. Not always?

rapid pagoda
#

Not if the row size doesn't change, lol

#

It's entirely possible for the format of a data file to change without the row size changing, if columns change order or if the combined size of added/removed columns sums out to zero

lean spindle
#

I see, interesting

woeful sphinx
#

if more columns are added than removed, you only see the the spec size error and it wouldn't be obvious that any column was removed at all

lean spindle
#

right, I follow. I see 010 editor in my future again o_o

#

pain

worthy cape
#

@lean spindle There's a lot of stuff shifting and changing types, so depending on how forgiving it is, it could very well crash out.

#

My tools, had they been written, would've helped with this 😄

lean spindle
#

Oh, what were you working on, in particular?

worthy cape
#

The idea is a tool that has multiple sets of Data files from different releases and distinct specs associated with each.
I'm envisioning some helpers that would look at previous versions of the tables and specs to guess the layout of new specs; and also correlating the contents of different-language and different-bitness/char-width files.

#

Kind of like the built-in viewer in the PoB exporter, but richer.

#

Still not sure on the UI design and where to take it, but it would've been handy at league launch.

lean spindle
#

Fancy. Having an archive of past data files and specs to help with building the new ones definitely sounds useful :)

worthy cape
#

Slapping them all in a leveldb and deduplicating on content hash, so should scale OK.

carmine merlin
#

PoB update with new skill gems is out

rapid pagoda
worthy cape
#

Possibly for some of the looser matching. I'm using something similar in 010 editor currently for external comparisons.

#

Some of the things would require a bit more type-awareness to see through the data offsets to the actual data.

pseudo ocean
#

@compact isle It looks to me like some information that is in ctrl+c is not present in ctrl+alt+c.
ctrl+c - ctrl+alt+c
Earthshatter creates +1 fissures (enchant) - Earthshatter creates +1 fissures
Adds 39 to 66 Physical Damage (fractured) - { Prefix Modifier "Flaring" (Tier: 1) — Damage, Physical, Attack } Adds 39(32-43) to 66(66-78) Physical Damage

To me, this would mean that ctrl+alt+c is incomplete and we would need to parse the ctrl+c as well... Anything you can pass on / look into?

grave wren
fluid wave
#

Is there any way to buy the devs some pizzas or something? I know how it is being in this incident situation and it sucks so hard

ocean shuttle
#

any one can help me hier?

broken cloud
#

Official tweet: "To our fellow devs, be careful with your database page sizes" https://twitter.com/pathofexile/status/1383366993445670914

The server stability issues appear to be fixed 🤞 To our fellow devs, be careful with your database page sizes. Thanks to the entire community for their patience today. This was a rough one.

We hope you enjoy Ultimatum!

Likes

774

#

Can anyone tell me more? Curious about how DB page sizes can cause this kind of catastrophic failure, but my pay grade never got this high before I turned my back on the industry

simple ravine
#

Too small page size will require several page reads to read a record. Too big of a page size will make you read more than what you need. It depends a little on how big a typical record is.

ocean shuttle
#

cant dowload the game give this eror

civic crane
#

definitely broken, one Ctrl+C press - three texts concatenated 😅

grizzled sand
#

Hey guys, im on the fuel beacon quest and my fuel cart is stuck at a corner? Not moving, mobs also frozen? Ive attempted to start a new realm/version but that is also stuck. Any ideas?

grave wren
dusty karma
#

Anyone have any insights as to why item filters would be broken? Mine haven't worked at all this league. Just using stock neversink ones on my account

pseudo ocean
lethal nimbus
#

nice game guys

grave wren
#

Nice channel choice

lethal nimbus
#

channel seems irrelevant tbh, the shit ggg gives is negative here or anywhere 🙂

#

lemme guess shud have sent an email? my bad, that would have fixed stuff..
/s

grave wren
lethal nimbus
#

im just clowning around, got my clown nose and all

#

game is a circus why not roleplay along ❓

#

but ill follow your advice, thank you kindly sir

ember meteor
#

wtf? in town
cpu usage 40%+ with fps lock on 75

worthy cape
#

Hello friend. This does not seem to be pertaining to tool development.

ember meteor
#

thread for help?

worthy cape
#

Somewhere else, or mail tech support if you want to actually dig into it.

ember meteor
#

sry anyway

worthy cape
#

@rapid pagoda Do you have any plans on updating the audio section with some sassmaster bits, or is it too early?

rapid pagoda
worthy cape
#

Ah, win-win ^_^

rapid pagoda
#

I've also been planning for a while to parse and display Betrayal triggers and Heist conversations, but need to figure out how to display that

#

And I've also been thinking about changing the site from being organized by audio directory to being organized by actual NPCs, based on parsed NPC talk rows. But that would be a much bigger change

worthy cape
#

Is the planning room banter of Heist in there? There's so many nice interactions between rogue couplings, but exploring them is a mess.

rapid pagoda
#

I believe so. It's in NPCConversations.dat

#
Id string
Unknown1 u64
NPCTextAudioKEys i64[]
AudioOffsets i32[]
Unknown4 i32
#

AudioOffsets is used to introduce delays between lines, or to make lines overlap

#

I have a feeling that there's a table somewhere for all of The Trialmaster's lines, with a ton of conditions, since a lot of the lines are very specific

placid dagger
#

Is there a tool that shows each of the games servers status/health? I don't mean CA, EU, etc... I mean something like Login, Auth, Load, Public Instance, Zone Instance?

worthy cape
#

No API to query that and the protocol is off limits, so not really.

rapid pagoda
#

I've been thinking for a while about an interchange format for data type definitions. How would other tool developers feel about something like:

<format file="NPCTextAudio.dat">
    <field name="Id"                    type="string" />
    <field name="CharactersKey"         type="r64" />
    <field name="Text"                  type="string" />
    <field name="Mono_AudioFile"        type="string" />
    <field name="Stereo_AudioFile"      type="string"   since="2.1" />
    <field name="HasStereo"             type="bool"     since="2.1" />
    <field name="Flag0"                 type="bool"     since="2.1" />
    <field name="Inflection"            type="string"   since="3.0" />
    <field name="Unknown0"              type="i32"      since="3.12" />
    <field name="Unknown1"              type="i32"      since="3.12" />
    <field name="Unknown2"              type="i32"      since="3.12" />
    <field name="NPCKeys"               type="i64[]"    since="3.13" />
    <field name="Unknown3"              type="r64"      since="3.14" />
</format>

where i32 means a 32-bit integer, i64[] means an array of 64-bit integers, r64 means a 64-bit integer which is a row ID (fefefefe semantics), f32/f64 for floats, etc

#

yes I know it's XML and XML is icky but it's not complicated XML and it's nicer to edit/comment/etc than JSON, imo

worthy cape
#

Gonna get a bit messy if you start doing until=, and I'm still not sure if fields have ever moved around.

#

Not sure if the types are quite expressive yet, I had some trouble mapping all the distinct types from stable.py into types when doing my Rust reader.

#

There's a lot of ref|T there, for example.

#

Right now in my tool I'm writing separate exporters from my own representation to spec.lua, stable.py, etc.

#

Do you see any need for padding/unknown fields, to have a spec in which you've not quite figured it all out yet?

#

Without having to invent Unknowns for it if the underlying type is not known.

rapid pagoda
#

Everything I've run into which PyPoE represents as ref|T is either a string, a list, or a nullable integer. This syntax represents those as string, T[], and r32/r64, respectively

#

And I'm not particularly bothered by Unknown padding fields

worthy cape
#

How does this map to the distinctions between 32/64 DATs?

rapid pagoda
#

It doesn't. I haven't tackled that yet. 🙂

worthy cape
#

I would love it if I could cut down the possible field types in my tool, as one of the features I want to have is guessing the type of fields.

rapid pagoda
#

... okay, whose idea was it to add "Upside Down" as a language, with the localized language name ndsᴉpǝ poʍu

worthy cape
#

^_^

silent tree
#

maybe they hired australian staff Susge

minor charm
rapid pagoda
velvet fog
#

NPCConversations.Unknown1 is DialogueEvent
NPCTextAudio.Inflection had gone for a while, it's bk2video now

rapid pagoda
#

updates format files :)

worthy cape
#

@minor charm Typically they change around league start, but sometimes mid-league like last one.

#

There's a bunch that tools don't use and as such, they may rot for a long while.

#

A fair bit of the lack of wiki updates is because pypoe's spec may not quite be up to snuff.

#

Which is also why some peeps still try to make tooling better around it, as it's core to anything from PoB to wiki 🙂

chrome topaz
#

is pypoe no longer updated?

flint stag
#

anyone using kosace enhancer and can explaine me how to set it up?

rapid pagoda
#

no idea what you're talking about

#

... wait, do you mean chaos enhancer?

flint stag
civic crane
#

@compact isle what is better for trade, ALWAYS use "Collapse Listings by Account" or request multiple api/trade/fetch and group on client side?
If "Collapse Listings by Account" is better, can you expose in API number of listings (or at least boolean) that were grouped into one.

compact isle
#

it's pretty situational so depends on when you're using it imo

civic crane
compact isle
#

as far as I know it's cheap, we can't return that we collapsed or how many without it becoming expensive though

solid herald
#

Dunno if this is the right channel to ask this in but uh.. for someone that doesn't really know much about coding.. how hard would it be to implement the two skills from Atziri's Rule to PoB?

hazy fiber
#

pretty easy

slender zephyr
#

what happened to the "Show node power featuer?"is it still available or only that power report, it takes ages to calculate

frank drift
rough carbon
#

fireball ignite damage does not get increased by cruelty in pob

#

ingame it does

#

needs fixing

rough carbon
#

thx

#

I submitted it, if you have questions just tag me :)

chrome topaz
#

hm website's not doing too hot, another ddos?

wind garden
#

says down for maintenance, would expect it to be unavailable if it were ddos

elfin jetty
#

@compact isle Hey, there's not way to filter out "Split" items on the trade site

timber path
#

Did anyone create/find the definition for the UltimatumModifiers.dat?

worthy cape
#

@chrome topaz We had some guild members appear in-game as if they were not in the guild anymore for a bit, not having chat, tag, nor guild stash; might've been some "unnoticeable" background maintenance.

#

Or completely unrelated, of course 🙂

worthy cape
#

Dang, UltimatumModifiers is wide. Some 1-wide fields that are all zero too, so hard to align things.

timber path
worthy cape
#

@timber path What tool do you use to play with DAT these days? Mine is not ready enough yet, so I use PoB 😄

civic crane
#

took me 5mins to define columns, verified by dat32 and dat64.
more difficult task is to find the name of foreign table, and give names to columns

#

edit: last 2 bytes in HASH column are booleans, hash is 16bit

timber path
#

@civic crane what's the strategy you're using to find these? Just make them all ints and check which ones are references to strings?

civic crane
odd sail
#

@civic crane do you happen to know what happened to Mod Tags?

civic crane
odd sail
#

it used to tie into Tags.dat I believe, but doesn't seem to

compact isle
#

those ctrl+c problems should've been fixed by the last hotfix btw (needs a client restart to work)

odd sail
#

@compact isle on trade site... not sure if this has always been the case but you can't search for stuff like "reduced" (e.g., Rain of Splinters "% reduced totem damage"). Instead you have to search for "increased" and flip the search conditions

#

I vaguely recall it used to not be that way

compact isle
#

it's always been that way

#

unfortunately allowing the weighted sum search makes it hard to fix since it would expose that the underlying values aren't what you expect

velvet fog
#

@odd sail Tags in ModType.dat had moved to the end of Mods.dat

odd sail
#

List of keys I assume

#

Will check later tonight when I can. Thanks

#

Do you know by any chance If radius of AoEs for AOE skills is stored in any table?

velvet fog
#

Nope, never found that

#

Do you know how ActiveSkills or GrantedEffects link to BuffDefinitions?

odd sail
#

Haven’t tried so no...

rain pasture
#

I just noticed filterblade has ZiggyD as one of its meta keywords 😛

swift shell
#

is there something like repoe but for unique items? im looking for a way to fetch a list of unique map names

#

id rather not have to hardcode and manually update

rapid pagoda
#

maps are in the data file and can be fetched by PyPoE or whatnot

swift shell
#

alright ill give that a look ty

rapid pagoda
#

tables to look at in particular are AtlasNode, Maps, and WorldAreas

wind garden
#

@fickle yew something is horribly broken, no currencies above Prime Regrading Lens are showing up on poe.ninja

fickle yew
#

Looks like someone is messing with the exalted price.

wind garden
fickle yew
#

Thanks for the heads up. I'll take a look.

oak estuary
#

Has anyone noticed differences between the .dat64 files and the .dat files? Found an extra chunk in Mods.dat in the dat64 version today, throwing off our offsets.

hazy fog
wind garden
#

@compact isle is there going to be a way to search using "Split/Non-Split" as a criteria?

worthy cape
wind garden
#

ah thanks

dusty rover
#

anyone know the specific reasons why openarl chose to write pob in lua?

chrome topaz
#

isn't python pretty good for web stuff? django etc, or not hip enough in 2021 anymore?

dusty rover
#

i write almost everything in Python. some C, C++, and Delphi, too. but i was thinking about porting POB to Rust as a first Rust project. probably client-server arch, so you don't have to update the client just to update skills, items, etc. just didn't know whether there were any good reasons for Lua, other than preference.

worthy cape
#

Nothing arl specific but it is traditionally very embeddable and lightweight, kind of like your average Lisp. Shallow abstractions, OK error recovery, decent C interop.

#

So many tables.

#

Back when I did Python interfacing, there was quite strong pushes in the community that you should “extend, not embed” Python with a blatant dismissal of embedding it for things like games, in the Python world view you run as an extension to a Python centric program in the interpreter.

#

I’ve tried embedding approximately every language under the sun 😄

chrome topaz
#

yeah that's pretty cursed

swift shell
#

client.txt should be in utf8 encoding right?

rapid pagoda
simple ravine
#

It's so cursed it died in 2018 it seems, at least from the looks on the website

simple ravine
#

last announcement was "yay, we made it to 1.0, we have so many plans"

#

"*crickets*"

hasty pebble
#

Hi everyone. About the mtx draw box. I am sobad luck. Bought 30 box. Got 12box is repeat open get same aura and other. What we can do with the repeat mtx? Can combine?

dull roost
#

Are the PoB community guys aware that Prism Guardian isn't working in the latest version?

#

When socket groups are assigned to Weapon 2 with it equipped (in weapon 2) the gems are still showing as reserving mana not life

frank drift
#

I don't know how much LocalIdentity et al read this channel

#

I have heard reports of Prism Guardian reserving life being broken, I'd bet there's a ticket open but haven't checked

dull roost
#

You're right, I forgot that its on github, problem with self updating programs is I haven't redownloaded it for years, lol

#

It is listed as a current issue

carmine merlin
#

Yep its known, fixed in the next update @dull roost

grave wren
rapid pagoda
simple ravine
#

transpilation is dead, long live webasm

#

oh wait, typescript

#

i'll give that a pass

civic crane
lusty musk
#

@fickle yew more than that, almost everything is broken into uselessness at the moment

lusty musk
#

I'm almost at the point where I'm considering updating my own stash tab indexer again to buy bulk prophecies/bases

lusty musk
#

hmm, is there a way to find more than the first 100 results from an official trade site search?

civic crane
#

not really, workaround is to use "Buyout Price" filter for pagination

worthy cape
#

How do these manipulations actually work?

#

Like, are there a ton of weird listings or just a few that trips it up?

#

Like the ex for ex ones?

lusty musk
#

yeah I'd love to find something better for that reason

worthy cape
#

It's kind of intended for human consumption, where you probably need to refine your search if you find yourself scrolling in the hundreds.

#

(sans some corner cases that don't behave well like blood-filled vessels)

civic crane
#

with the new "Collapse Listings by Account" it's even lower chance that you need more than 100 results

fickle yew
#

Exalted restored and extra checks added to avoid further manipulation.

dense shore
#

what! 1c isn't 67 mirrors!, what a scam

lusty musk
#

I'm trying to find bulk bases

lusty musk
#

e.g. I'd like to find people that have 4+ i86+ stygian vises listed to save me time while buying

#

up to some maximum price I'm willing to pay

frank drift
lusty musk
#

yeah I wrote a quick python script

#

so it can miss items if there's more than 100 at a certain amount of chaos

#

but other than that it works (using 'price pagination')

gilded tree
# worthy cape Like, are there a ton of weird listings or just a few that trips it up?

can only talk about my page but I would say both. It's quite obvious that if you get a ton of weird listings that your price could get affected. So you have to work against that, for example with weights.
If you internally calculate currencies and one is fucked up, probably more are getting affected. With that more and more will change.
//edit: okay, I removed the example. Not that it destroys something.

worthy cape
#

I guess there's some upsides to the somewhat manual rebalancing of the "true ex-value" on the official trade site.

fickle yew
#

It seems that actually a lot of wrong listings (people selling an ex for 1/130 of a chaos because of trade syntax) made it much easier to manipulate this time. I wonder why that increased though.

#

I mitigate a lot of other things like what @gilded tree mentioned but this was not an issue before.

tacit birch
#

I saw that on poedb the catalysts are listed under blight ^^ Don't know if maintainer uses this channel

frank drift
#

@velvet fog

frigid nova
#

would there be any interest in maintaining an open source community spec for the ggpk? could be nice for all tools to contribute and share from the same spec.

rapid pagoda
frigid nova
#

dat formats

worthy cape
#

There's been talk every now and then to have an universal DAT spec, but my tools are very behind, @rapid pagoda has some OK ideas, and there's probably more.

rapid pagoda
frigid nova
#

yeah, that suggestion is fine enough for me, i have basically no opinion on the format, just the existence of it

#

it seems like there are a few tools all with there own specs, might as well centralize it

#

that way, when pypoe falls super behind like it has the last few leagues, it could instead reference some central spec

#

curious if @velvet fog would be interested in contributing

#

since they seem to have the most up to date spec

worthy cape
#

My idea has been to have a core spec with variants that work for different versions of the game; and exports with field renaming to what different tools expect in their own specific formats.

#

Life's been busy as always lately tho, so not much progress; PoB's exporter beats my tool for now.

frigid nova
#

@worthy cape can you remind me which tool is yours

worthy cape
#

bun_extract_file, poe-rs, poe-doc, and poe-cpp with the hideout editor

#

Started making a DAT spec finder tool after the editor fell through, with the intent to try to divine things from multiple versions and variants of the DATs.

frigid nova
#

would be really nice, imo

worthy cape
#

Inspired by the PyPoE and wiki struggles ^_^

frigid nova
#

as i build more tools on top of pypoe and repoe i get clogged each league by spec madness

civic crane
rapid pagoda
#

Anyways that looks roughly similar to what I had in mind, with the exception of inline versioning. Also, there's two types of row ID columns in data files (32-bit and 64-bit)

civic crane
rapid pagoda
#

Oh, huh, interesting

worthy cape
#

Ah, base offset.

civic crane
#

1-based is no longer used for new tables

worthy cape
#

The resource costs references are 0-based I think, f.ex.

civic crane
#

irc the last one using 1-based is near Abyss league

worthy cape
#

(keys may always have been, very unversed in history)

rapid pagoda
#

Although I think there are also a few which are references to empty-row tables

wind garden
#

@compact isle why does this work like this?

#

I even set my search to exactly chaos exactly between 0.5 and 0.5

worthy cape
#

Silly people listing in decimal instead of fractions?

#

Note that it actually rounds the cost down in the whisper too.

#

There's a bit of equalizing of decimal values to avoid people going for miniscule amounts below nominal to beat the sort order.

wind garden
#

I don't understand why it's handled differently than it is in the bulk trade search

hazy fiber
#

chaos only rounds to the closest 0.5c

wind garden
#

right

#

but why

hazy fiber
#

ex rounds to the closest 0.1? but everything else is 0.5 iirc

#

my guess is just how their database sorts stuff

wind garden
#

seems like it would be way easier to literally take the value in the UI box and store it as a decimal

#

if they put in a weird fraction, it shows up in search priced as a weird fraction

velvet fog
#

@tacit birch thanks

wind garden
#

it matters because it's basically impossible to buy currency at the listed price because they're out of date and already sold. But you should be able to make a live search and message them as it's listed. Except the price filter doesn't work on anything worth less than 1c

frigid nova
#

@wind garden iirc, it was to prevent people getting top listings with prices of .9999

wind garden
#

it makes sense for non-bulk items

#

also makes sense for items worth more than 1c

#

but for items worth less than 1c, it's very necessary

#

is anyone really goign to care if someone lists something for 0.99c isntead of 1c? no. Would they care if they listed for 149.99c? yes

#

if behaves like a bug because the search UI does not match the results

#

nothing is preventing them for listing at 0.6c. It's int he note, that's what it's actually listed at. The only difference is the search result isn't showing you 0.6c, it's showing you 0.5c.

oak estuary
#

It'd just be a race to the bottom with the expectation that you pay 1c anyway. Bulk items aren't special, they still show up under the regular search, don't they?

frank drift
#

I don't think they do

lusty musk
#

you'll get tons of manipulation by people to get their stuff to the front

#

e.g. listings for 0.95c

frank drift
#

there's a way to do it already and it's quite profitable

#

enabling it more would definitely be detrimental

lusty musk
#

I did some work and I like it much better now

#

(the left hand side is sticky so if you scroll down it always stays on screen, as is the search bar/buttons

civic crane
#

this doesn't add value tbh. I'd like to see auto expanding/hiding of filter groups and filters itself based on selected item category or selected item name. And even better make item category as a row of buttons (optionally with icons) than the current dropdown

glossy ibex
#

Is there a way to get more than the first 100 results of a search, without building my own stash tab index? I am interested in the distribution of prices for items, not just the cheapest/most expensive/average.

tacit birch
#

@velvet fog templarthumbsup❤️ Love poedb, great tool

willow zenith
#

@lusty musk add stats

lusty musk
willow zenith
#

Just add stats

lusty musk
lusty musk
willow zenith
#

U have ho place for stats

lusty musk
#

do you mean requirements? it's on the right hand side

willow zenith
#

Is it going to expand

#

Stat filter

lusty musk
#

yes it's there

willow zenith
#

And u have place for 1 or 2

lusty musk
#

it's right there dude

willow zenith
#

+Add Stat Filter

#

Top right

#

Corner

lusty musk
#

I'm sorry I have no idea what you're suggesting

willow zenith
#

Stat Filter

chrome topaz
#

add stats bro

lusty musk
#

repeating it word for word is not going to suddenly make me understand

willow zenith
#

@lusty musk

#

Its actually Stat Filter

#

Wait a sec

#

@lusty musk

lusty musk
#

what about that?

frank drift
wind garden
# lusty musk yes people care

You're missing the point, people are already doing this, the search filter just isn't working properly on them. These fusings are actually listed at 0.65c because that's what the bulk trade picks them up as. Except when you manually search for them, the results say 0.5c instead. It should not work this way.

#

Maybe bulk trade items need to get special treatment. I'm not sure the best solution. But as it is, you cannot search for bulk trade items in a live search and get accurate prices if it's listed in fractions of a chaos (which is basically every bulk trade item).

#

so you can't make the argument (it's to prevent people from listing in fractions of a chaos) because they are, and nothing is preventing them.

chrome topaz
#

do ppl really live search currency

#

seems pointless as you can just make your own listing instead

wind garden
#

It’s not the same thing

#

And even still, it’s just another way of saying, “ya it’s broken, oh well”

rapid pagoda
rapid pagoda
#

@frigid nova @worthy cape @civic crane https://github.com/oriath-net/formats started this thing 🎉 will import a bunch of formats from PyPoe shortly

GitHub

Data file format specifications for Path of Exile. Contribute to oriath-net/formats development by creating an account on GitHub.

frigid nova
#

@rapid pagoda oh nice! i was going to suggest we have pobcommunity own it

#

with the hope that having it joint owned it will be less likely to fall behind in maintenance

#

if you'd be ammenable to that, the pob community maintainers signed off on being interested in maintaining it

rapid pagoda
#

Also, I've just imported all the defs from PyPoE. Not all of them work with the current release, but it's a starting point

golden bane
#

We were going with TOML instead. Easy to edit by hand and easy to emit JSON/YAML/XML from it

woeful sphinx
#

If you want to start with pypoe's spec, the one in my fork has the changes from 3.14 (which I based on the spec @frigid nova linked).

#

There's also the poe-tool-dev (or whatever it's called) github orga, which might be a suitable place for such a project since it already has a wiki about the ggpk format.

civic crane
#
  1. I'm against Unknown01 Flag01 Key01 field names, it's a visual noise that prevents quickly scanning by eyes columns with known/unknown data. Such fields must be empty strings, if someone requires loading fields into Map structure they can be renamed at load time.
#
  1. League specific introduced tables (league name as prefix) should be grouped into one XML file
#
  1. Don't use XML comments, they are not bound to any node, just floating around, can't be transformed into other structured data formats
#
  1. vertical aligning using spaces is such a bad idea that was described numerous times why
#
  1. r32, r64: 32/64 bit row identifiers - wrong, misleading name. Size can be as low as 32 (dat32, referencing row in same file) to large as 128 (dat64, referencing row in foreign file). Correct name for this type is row, size of which depends on dat mem model and location of row it references
simple ravine
#

It's a very good idea to create a collaborative repository for the dat specification

#

@civic crane if you're not already invited, I can invite you to the organization and you could create a repository in there, where everyone can find it easier and contribute to the dat/documentation and whatnot

rapid pagoda
#

@civic crane Point by point:

  1. The fields need some kind of unique name for the tools to work. Removing the names or the fields entirely makes it impossible to represent the data unambiguously in some formats (like JSON), and makes it harder to discuss them. PyPoE was already using those types of names, so it's easiest (and preserves compatibility) to keep that convention
  2. Why? One XML file per data file is a lot easier to keep track of, both for humans and tools.
  3. I don't feel like the current comments need to be structured data. They're notes made during the development of the spec. If we want to have some kind of extended description of a field's contents, that might make sense to include within the data
  4. shrug It makes it easier for me to work with? But it isn't as though the alignment is inherent to the format, it's just how I've authored the initial files
  5. I haven't taken a close look at 64-bit data files yet, and I'll deal with that when I get there. If that means changing r32/r64 to shortid/longid, so be it, but I don't want to combine them into a single type that requires additional information to handle
civic crane
#
  1. if someone requires loading fields into Map structure they can be renamed at load time
  2. less open tabs in VScode when editing related files and navigating I think
  3. additional information to handle, if so then types rowself rowref
golden bane
#

I'd argue that specs for the 64 bit dat files are more valuable than for the 32 bit ones. Not only is this the format of the future, when 32 bits support gets dropped eventually, also for the last few league release patches, the 64 bit dat files were not removed, which means a 3-4 hour head start for third-party devs, provided you're able to read them

rapid pagoda
#

@golden bane I can basically guarantee that'll change now that you've pointed it out 😉

chrome topaz
#

can pogo parse mod localization files? it looks PyPoe is now "officially" dead so i'm looking to switch...

rapid pagoda
chrome topaz
#

i think it's txt under Metadata/StatDescriptions but i'm not overly familiar

golden bane
#

PoB only needs the English mods, but it shouldn't be hard to make the exporter read the others as well

chrome topaz
#

ah by localization files I meant english files, I don't care about other languages

rapid pagoda
#

Ah. I don't currently do any parsing of anything outside Data/ but pogo can read those files out of the bundles

golden bane
rapid pagoda
#

The StatDescription files are structured text and have all the languages alongside each other, e.g.

description
        1 heist_coins_from_monsters_+%
        2
                1|# "{0}% increased Rogue's Markers dropped by monsters"
                #|-1 "{0}% reduced Rogue's Markers dropped by monsters" negate 1
        lang "German"
        2
                1|# "{0}% erhöhte Menge fallen gelassener Signa der Abtrünnigen von Monstern"
                #|-1 "{0}% verringerte Menge fallen gelassener Signa der Abtrünnigen von Monstern" negate 1
chrome topaz
#

ok I'll take a look at what pob does

#

it looks pretty close to what I'm doing with pypoe now, thanks

#

@golden bane is there any doc about how to run pob export?

golden bane
#

It's at the bottom of CONTRIBUTING

chrome topaz
#

alright sweet

civic crane
#

in my vision schema repository also uses gh ci with release action that create concatenated xml, c# classes, rust, pypoe py file, json, ... whatever we add buildscripts to it

chrome topaz
golden bane
chrome topaz
#

ok let me try

golden bane
#

If you don't want to build it yourself, I can send you a compiled version

chrome topaz
#

got it to work, looks good

rapid pagoda
#

And since it came up, I've started work on dat64/datl support in pogo. I've got it successfully parsing a simple data file (Acts.dat64) already

simple ravine
rapid pagoda
#

Before I start updating things, any major objections to shortid and id as new names for row references (currently r32 and r64 in my spec files)? A quick scan of the formats directory shows that most (94%) currently known row IDs in PyPoE are r64, so it makes sense to have that be the implied default

civic crane
simple ravine
#

r64?

rapid pagoda
simple ravine
#

ah

rapid pagoda
#

Actually, make that shortrowid and rowid. We already call a lot of fields Id which aren't row IDs, so having a type id is confusing

simple ravine
rapid pagoda
#

XML for now, oriath-net/formats. I'm still open to some form of shared ownership or a different format but this is what I've got for now

simple ravine
#

Ok cool, let's talk more about it sometime. I'm a bit biased towards JSON rather than XML, but whatever machine-readable-format that is somewhat understood by others

rapid pagoda
#

My main gripes with JSON are 1) the trailing comma thing and 2) no native comments. I love it dearly for interchange (it's what pogo uses for exporting data) but it's not super fun to edit

#

I'm still really curious what the story is behind the datl (UTF-32 strings) files.

velvet fog
#

they removed Data.*.bundle.bin files in Heist, and then removed Data/ directory in Ultimatum. I think they will remove more in next torrent publish.

hazy wigeon
#

So I was asking about this prior but would like to poke in again as its still important to me, if one wanted to go through the steps to datamine the base damage of a specific minion, in this case Spectral Wolf Companion, or if theres a repo somewhere with latest datamined values, where/what/how would I go about this?

Im looking for figuring out what the base, raw damage is of the Lv 25 spectral wolf skill Law of the Wilds gives, GGG buffed this from "lv 20" to "lv 25" which is, for the most part, meaningless as I understand it becauses they could assign any damage value to the lv 25 wolves they please, really.

How do I figure out, or calculate, or whatever what the damage of this change actually is?

Or, more specifically, in PoB, where did the devs pull these numbers from? What steps would I do to reproduce getting these numbers now but for the newly patched lv 25 version of the skill?

worthy cape
#

@hazy wigeon Talking from a PoB perspective here...

The skill that summons it is SummonRigwaldsPack, and the minion summoned is SummonedSpectralWolf.
The skill has an array levels of levels for the skills it grants, in this case two entries of level 10 and level 25 Summon Spectral Wolf: https://github.com/PathOfBuildingCommunity/PathOfBuilding/blob/77ae3a8/src/Data/Skills/other.lua#L2609-L2662
The numbers in the array correspond to the parameters to the list of stats, taken left-to-right as you go down the list of stats. Each parameter is interpolated according to the statInterpolation values; where 1 is static, 2 is linear, and 3 is a weird effectiveness kind of thing. If I recall correctly, the minion's actor level is the levelRequirement field.
The minions are rather boring melee ones, defined as such: https://github.com/PathOfBuildingCommunity/PathOfBuilding/blob/77ae3a8/src/Data/Minions.lua#L204-L223

They're generated from tables in the game data files according to the logic in the Export app from these entries:
https://github.com/PathOfBuildingCommunity/PathOfBuilding/blob/77ae3a8/src/Export/Minions/Minions.txt#L40-L42
https://github.com/PathOfBuildingCommunity/PathOfBuilding/blob/77ae3a8/src/Export/Skills/other.txt#L651-L671

As for the previous meaning of the granted level 20 skill, it depends on if the minion and skill definitions were different in the past, or if it's a matter of comparing levels 10 vs. 25 of the skill.

#

Regarding the logic that computes the values you see in Modules/Calc*, I'm staying far from that since my last look 😄

hazy wigeon
#

Is it reasonable to assume then that the Required Level of the "skill gem" from the datamining, corrolates to the mined damage values of the actor?

So it used to be lv 70 req, now its lv 78 req. Does that mean they likely buffed it from summoning lv 70 wolves to lv 78 wolves?

worthy cape
#

Previously it read [20] = { 30000, 10, 10, 8, 65, 8, 16, levelRequirement = 70, statInterpolation = { 1, 1, 1, 1, 1, 1, 1, }, },.

#

Seems like a reasonable assumption to make, but PoB is all just modelling around what beliefs of what the data stands for; but it's how spectres and minions in general work.

compact isle
#

just a random heads up but we're handling OAuth applications via oauth@grindinggear.com now (it still goes to me but also to other people)

rapid pagoda
#

so what you're saying is they put you behind a load balancer

grim mural
#

@fickle yew hey, i cant search for uniques, skill gems and etc and website's crangled for me and i think its because of CORB, what should i do in that case?

fickle yew
grim mural
#

No, its updated @fickle yew

#

Its like that for me since end of heist league

fickle yew
grim mural
#

Cant do it atm, will send it when i will get to my pc

grim mural
#

@fickle yew okay, poe.ninja was broken because chrome was ***ing with me(it couldnt update for some unknown reason even though i started updating process multiple times), now it works okay, ty for help

fickle yew
distant rock
#

anyone here implemented the new scopes for stashes/characters in OAuth? kinda want to bounce it with some1

oak estuary
#

@fickle yew is there a field from the poe.ninja API that determines relic vs. normal uniques?

gusty holly
#

There was a way to buy things faster using poe.trace.macro where you could CRTL click the whisper on the trade site and it would send it in game. Is there anything still like that?

last violet
#

My path of building isnt showing me the difference in nodes. It should show me damage per point, gains, etc etc

#

I looked and couldnt find anything

rapid pagoda
#

@last violet Working correctly. Notice the line "No changes from allocating this node...". If you're expecting to see a difference, make sure you have the right primary skill selected

oak estuary
gusty holly
#

thats it

fickle yew
#

It's been a couple of years 😅

oak estuary
#

Ah, I saw "relic" in the item id, itemClass works much better, thanks!

burnt terrace
#

Hi, I would like to know if there is any chat bot available or in development for poe.

Bots that play the game are obviously not allowed but chatbots are harmless if not used to spam messages.

I would like to implement a chatbot for our guild so that it could respond to a couple of simple price check commands, common questions, even perhaps integrate it with a potential future guild stash management bot that could transfer items between protected tabs to introduce a more complete solution for guild stashes, initially to provide a !starterpack command that gives a tabula and goldrim for new players.

#

Ideally the bot should communicate with ggg servers directly so that it doesn't need to keep the game alive with a gpu all the time... I learned to read the game memory from last time but I still can't understand how to communicate directly with the game server api

burnt terrace
#

ye but it would be really cool to have that and It's probably not gonna be something they will really bother

frank drift
#

any kind of headless client I would expect they would definitely bother

burnt terrace
#

hm... I suppose there must be some systems within it to prevent it then, that will probably be too difficult

hazy fiber
#

its likely slippery slope, theres not a good reason to have a chatbot but developing the headless client it needs to run could be used for other bots as well as some of its functionality

#

so the chances it would be allowed is defs 0 without permission from ggg themselves

#

also reading game memory or spoofing communications to the server is not allowed for the same reason

rapid pagoda
worthy cape
#

Super forbidden to reverse-engineer and interact with it, so don't, even if your use-case is arguably benign.

burnt terrace
#

theoretically... if ggg went to take action against guild chatbots cause of the headless cli who would they ban/suspend? the guild, the guild admin, the bot account or all of them?

frank drift
#

anyone using the headless client, and whoever developed it extra hard

burnt terrace
#

so likely no one from the guild would be affected, right?

#

wait... do you mean interecting with the bot?

#

oh no... that would be bad

frank drift
#

unless it became public that they knew TOS-breaking software was being used and didn't report it

#

regardless

#

just don't

#

don't even think about it

heavy crow
#

Question

#

AreaLevel [Operator] <Value>

#

what does the operator mean?

worthy cape
#

Usual relational ones like <= etc.

heavy crow
#

ahhhhhh

#

ok

#

what about class

worthy cape
#

Scroll down a little on that page 🙂

#

It's a great reference.

heavy crow
#

ok im gonna read to page then :p

#

was too lazy lol

frank drift
#

might also be helpful to open a neversink filter and look at it

heavy crow
#

yeah i have it open

#

and the item filter debugger

fickle yew
#

I finally got around to combining gems 1-19 (level and quality). Should see more alt quality gems now.

frank drift
#

should help neversink potentially too / anyone else using poeninja data

coarse egret
#

my bro have problems can't connect have solution ? i die vs conqueror and disconected now i have this message

worthy cape
#

@coarse egret This channel isn't for game troubleshooting, contact tech support or use the forum.

#

They will tell you to run PackCheck or Steam's file verification to start with, so start with that 😄

coarse egret
#

no chanel on discord ? hum okey i try

worthy cape
#

GGG has no real user-facing presence on this Discord, it's all community-to-community.

coarse egret
#

ok

chrome topaz
golden bane
oak estuary
#

Aren't most interpreted languages like that? If the file never gets run you'll never see the error.

oak estuary
civic crane
#

@compact isle "Collapse Listings by Account" filter sets collapse: {option: "true"} as string, but when you open generated url in new tab backend returns it as JS boolean collapse: {option: true}, which causes UI to not pick up actual filter value and it shows "No"

chrome topaz
#

oh yeah the unique map is correct, it's one of these "boss drops # additional #"

flat knot
#

not sure if people around here know anyone, but poe.ninja has a memory leak somewhere and keeps getting oom killed by chrome, just fyi

#

has been a problem for a few weeks

frank drift
#

I haven't noticed any issues though

civic crane
flat knot
#

Sure, let me start up a new tab now and keep an eye on it. I am pretty sure ive seen it on both the currency page and a specific build page

#

but let me verify

#

Thew few tabs I just opened are sitting around 200m each, ill keep an eye on them

flat knot
#

They are around 600MB each now, just sitting idle there.

fickle yew
fickle yew
#

Considering giving cluster jewel bases another try... Thinking about doing:

  • All the passive node variants (% increased lightning damage)
  • Number of small nodes added
  • Level ranges (based on mods): 1-49, 50-67, 68-74, 75-83, 84+

Thoughts?

simple ravine
#

Cluster jewels are still confusing me ¯_(ツ)_/¯. I mentally still live in the 2.4 era of PoE 😄

fickle yew
simple ravine
#

haha pretty much

worthy cape
#

There's groups of passives added that are of equal value to players but I don't know if those are meaningful or universal enough for culling listings; like how 4-5 passive mediums cost the same number of points to traverse, and where if you only care about a specific subset of the notables on 9-passive ones, they're as good as an 8-passive.

fickle yew
#

Yeah but I think most of those should be caught by my combined categories?

simple ravine
#

This could actually be a candidate for some ML. I've been quite vocally skeptical to the methodology to price items here before... but this might be a good thing to try.

#

Reason being, if my guess is somewhat right, that it depends what's meta, and the ingoing parameters might change over time.

tiny cargo
#

The meta affects the price of the bases but the price difference between a base and a finished jewel should be mostly affected by the crafting costs. For the estimated price of a jewel using the cost of a base and crafting materials should be possible and be independent of the meta.

simple ravine
#

You mean that people who buy cluster jewels are looking for bases rather than a finished product?

hazy fiber
# tiny cargo The meta affects the price of the bases but the price difference between a base ...

This is only partially correct, any setup that can easily be generated via a more advanced method can be made cheaper than it sells for, also the other thing is crafting bases up tends to be worth it in many cases as even if you dont the super valuable combo you are likely to hit some secondary combo thats also worth somthing

needed flask clusters last league, estimated cost to craft: 4.5ex, price on market, 4.8ex, bought 20 bases and crafted em up and sold any lesser combos, total spent : 18ex, total profit, 2 finished jewels + 34ex

tiny cargo
# simple ravine You mean that people who buy cluster jewels are looking for bases rather than a ...

No, they are looking for both I guess.

For example when minion builds were the meta build in blight. +3 elder bone helmets were expensive, but the base as bound fossil already were expensive. The prices are different at the moment due the different meta, but the difference (crafting cost) should be independent of that. It will always take X fossil and a base to make one. If something is meta the price of the base will rise and the price of the materials too (Simpler examples are HH and ancient orbs or unique 6L and fusings).
The price of a finished item should converge to what it takes to make it.

simple ravine
#

Well, there are 2 ways of determining how to cluster (group) things together, either by observing several properties (modifiers, labels) and their prices (value), or by using meta/domain-knowledge. The former we can automate.

#

But I think I was a bit premature in thinking ML might work in the scenario to solve rasmus' predicament

tiny cargo
#

Well, it still can work. Using the knowledge just could circumvent the meta problematic you mentioned.

simple ravine
#

what you could do is pull in other information, one that rasmus already has, which is the builds, and categorize cluster jewels based on that, to understand which builds uses what to determine a categorization of some sort

#

but there's likely a lot of overlaps

flat knot
#

@fickle yew ads, the new video ones i suspect are doing this, that same tab is using 2.1gig of memory today

#

I have to kill them , want me to get a profile?

flat knot
#

it crashed while trying to save the profile

fickle yew
flat knot
#

ok, all ads or just the specific video ones? i am not sure how to do just some and feel bad about not supporting the site

fickle yew
#

Just block all, it's fine. I don't mind. I also don't nudge people to not block 😅

#

I'll bring the memory issue up with the ad provider. Thanks for reporting it.

simple ravine
#

I'm naughty enough to block about 30k of ad domains in my router's dnsmasq. Quite convenient

fickle yew
simple ravine
#

:3

fickle yew
simple ravine
#

Haha yes of course 🙂