#tooldev-general
1 messages ยท Page 106 of 1
ML/AI is not my area (Cloud is), but from what I've read, a good algorithm is in the mid 70's in accuracy?
around 80's i'd say
Perhaps its become better since I have a little alice in the wonderland moment around ML
there is pretty good stuff, but i'm not deep in ml too rn, just swimming around.
One reason I'm not deep into ML is because I despise python ๐
you can always do it on R
yeah, thats even worse
hahah
there are a lot of good libraries in python and R, especially when new papers are out - there will be library with that method soon
$?
Instead of doing say f x (y z w) you can go f x $ y z w
That is, call f with two arguments, x and the result of calling y with z and w.
My brain can't handle functional for some reason
all this left folding and higher order nomad stuff is just beyond me
Regular boring Haskell is fine. When you let the type wankers start doing things with their operators, you're doomed.
They've mostly stayed out of Rust thus far, and I pray it stays that way.
The only thing I remember from the Haskell stuff I read was that they like hamburgers
"wouldn't it be nice with higher-order-functions to solve this small niggle?"
Give them any abstraction and they'll ruin everything ๐
I have this problem with one of my architects in a project now
He's working on all the core libraries for a big โฌ1m+ project, and there are abstractions all over the place
i'm not a coder so i just bash my head with code until it works
@simple ravine I've written honest-to-God C the last month or so. It's so relaxing.
It looks like they let a dog inside of a China store
or my head hurts too much
Went for C99, declare-anywhere is a must.
I haven't touched an IDE for a serious thing in a long time now
I'm starting to miss it. I think I will crack the whip at this architect and show him how things are done
uh-oh, management is coding
i've started coding only because stat software is utter trash
Oh I'm not his manager
But they gave me some fancy title and new responsibilities, so now my calendar look like a dumpster fire
And my primary tools are Visio and PowerPoint ๐ ๐ซ
welcome to being business analyst 101, where you translate from tech/math/stat to human.
Oh nah. I'm "Chief Cloud Architect", but I work with a few business analysts indeed
It's fun if you are patient enough, i worked as business analyst for some time.
The thing though, is that the BAs that excel are the ones who have a technical flair
Same with project managers
(In software projects that is)
We deployed a technique called 'Domain Story Telling' with a customer project recently, and customer loved it. That's pretty nice. I'm hopeful we can start training our BAs to understand the process in-depth so they can have that thinking from day 1
that's usually the case, yeah, you have to understand what you are working with.
I wish our BAs were technical
They rarely are. Ours are mainly non-technical (with some understanding of course)
i do stat models and always tell to people who are going to use them that it's just numbers if we are not taking reality into account and how your business works.
same with ba
The primary thing to understand (from my perspective) are the processes involved in the business. Without that, it's going to be tough crafting good software.
Basically, our BAs are meeting liaisons lol
And who are involved in different processes etc
haha, nice
I'm recommending every BA, software developer and architect to watch and understand this process:
Domain-Driven Design Europe 2018
https://dddeurope.com/
https://twitter.com/ddd_eu
Find Context Boundaries with Domain Storytelling
DDD practitioners want to identify bounded contexts and work out ubiquitous languages. Domain experts, however, often work together across contex...
(And also understand DDD, Bounded Contexts, Ubiquitous Language...)
All of these things are actually fairly non-technical, so it should be possible
It's surprising how much nuances you get from talking to domain experts in your business when using this methodology, which you'd painfully discover too late in a project otherwise
And at that point, normally the blame is pointed to the BAs/Domain Experts/Stakeholders that they haven't shared this before etc
But with some proactive empathy (knowing that these domain experts, are also humans) you're able to have a higher chance of a software fiasco... which we all know happens too often unfortunately
And then someone fancy starts with lean UX and you're doomed doing stuff with paper and glue
The course in architecture I took had a longer part on DDD quite interesting but hard to do in legacy projects
Sounds like a good way to have stakeholders not get into discussion about irrelevant UI/design questions too early
And yeah, DDD @grave wren, like many other design principles, are hard to retrofit.
But because you talk about systems and not applications, what you can do is refactor one part at the time to leverage new design principles like DDD.
Of course, with some legacy systems (more than some perhaps), are too coupled and have too low cohesion - which means it's a re-write candidate for sure.
the one hard thing about tdd for me is "speak the same language", personally not a fan of either a mix of german and english or plain German. But inventing english terms for specific german terms also bit us in the ass already, still unhappy about any solution for this i've seen so far. Can imagine you have the same problem - or are your customers english speaking?
I think Sweden has embraced English a lot better then German and French, not to try to step on anybody's toes. I have seen very little swedish in code, even comments
That sounds like rubbish
if your customer is a swedish business i don't think they use english terms?
Uncle Bob also thinks that everyone should use Clojure ๐
dunno the term ubiquitous language definitely stuck with ddd
which is hard because of german <> english and customer also evolving terms
In my Swedish-only Customers (who aren't global entities), we translate their terms in TDD (and DDD) situations
but isn't that translation already a thing that "breaks" the goal of ddd's ubiquitous language a bit as you always have to retranslate?
Well ubiquitous language is more "the word order is this for us"
"but for the other department, it's something different"
dunno i've found that the translations can also cause some confusion with customers as you as dev use your technical translation sometimes which customers obviously do not know
but i'd also not budge in using lots of german terms in code
So you can only hire german speaking developers...
No not what i am saying
I am mostly asking how you handle it because it feels like this part is mostly nicely working for english speaking countries
it feels like as soon as you add that translation layer you have another gap to fill
It works for us here too, because we strictly do not use swedish in the software.
We don't feel that gap, as we embrace English more than Germany do, I believe.
Which was the point I was making earlier
so you never use the english term you invented during talks with stakeholders?
We usually use the english terms with the stakeholders
yes that explains it
because we have to use the german terms they use so they understand while using the internal names in our code
and this leads to confusion sometimes
They're all onboard that everything software related is in English, and if there's no translation for a specific domain word/phrase, we define it together and move on
Any other way would make it difficult, indeed
with the uni as customer we have lots of everchanging names in german which are cemented for us
came for api questions, stayed for business practices discussion
a) You have a lot of international talent. Using a native language in the code-base would bar that opportunity.
b) Having that gap, as you well said creates confusion.
--
Stay a while and listen
yes that is the main issue i have with the common language model - imo we'd need to be more strict with customers to just define the terms once
a colleague thought just changing to german terms would help but i disagree, they'll keep changing terms and we have a native shitty codebase
Well, the good thing with this is... if they have more than one definition of a term... you have different bounded contexts ๐
i am not so sure if that is really a bounded context
imagine talking about a specific subtype of online exam you can do directly
the first term was ad hoc online exam, now it's instant online exam
Or confused stakeholders ๐
^ mostly
too many stakeholders in that uni context who want different things
while we only get info from the it stakeholder
ooh i know the situation
but kinda glad i did not move on from this job, being on trial period rn has to suck
it's more of banging your head on the wall untill you get all requirements from everyone.
than slight smile
dead-inside-smile :>
We had to also move from a specific service provider to another one in 2 weeks due to corona
customer also wanted to change the whole process during that time to make it "easier"
what's even shittier that i have really bad documentation for data that i'm working on
that was fun
moving from a proven process that took a while to iron out to something new again
isn't that the norm?
all the apis I've interacted with professionally were horrible so far
wasn;t api, was just a dump from database
"external ids must be alphanumeric"
schedules thing
gets non alphanumeric external id from api
api errors out when querying with non alphanumeric id
with really shitty documentation
the call with the new service provider was also fun
usually there's at least one person who knows what is what in the data, but not this time
so who uses this service in production?
well one uni will be in a few weeks in amsterdam
Guess my motivation after hearing this :>
i usually just sigh and chant that i'm getting paid by hour for this shitshow.
ouch
project lead also wanted to move my estimations to sooner dates with "more devs"
unfortunately nobody worked in this code base besides me and my colleague so i just went over him in the customer call and made clear my estimations are the best case already
the architect is also the project lead here, as i said small project
so it's basically me and my colleague being the architects
is he/she a good architect though?
I honestly am not sure - it feels like he does not know the project well enough anymore to be one but his advice for abstract problems was fine mostly
some of his decisions were questionable tho
hmm
we are dealing with 3 frontend frameworks currently, legacy angularjs, angular 8 and ui5. The latter one was chosen to quickly provide value to the customer
and i absolutely disagree with the decision to handle those frameworks in a small project
well, that's something that will always be the case to some degree
the only one who worked with the ui5 frontend is me
if i leave they're SOL
customer also does not have a sap backend so it's mostly tons of glued together stuff to make it emulate stuff you gain for free by using the sap stuff
imo the better decision would've been using angular for the ui5 part as well
SAP is the worst piece of shit
i mean ui5 in theory is neat
should be happy you don't have to touch that dumpsterfire
in practice everything you "get for free" either does not work as promised or does not work with odatav4
i can only assume it works as intended for the sap lads
or i can only pity them
haha... SAP is so 20 years behind everyone else
the drag and drop support is horrible as well
but i don't think i'd need to mention that
or you know, we are competent in angular
just let us use that
not like there are no packages that deal with displaying tables
other than that i've at least learned tons in basically all areas of software eng due to being mainly responsible for this thing
a colleague was scheduled to move customers, and they were very impressed with what we had to handle ourselves, so that is something
the problem that might happen when developers (now, I am of course not knowing you well enough, so not saying this applies to you) is that they're left alone, and learn a bunch of antipatterns etc
so some kind of peer validation etc can be good
that is why i want to leave
but corona says no atm
i'd value someone more experienced for some guidance
yeah, unless you're super senior with unique skillset, i'd stay put right now
i'm staying put as well for sure
Yep almost everyone has a hiring freeze right now here
Yeah, having fewer recruiters hounding me right now, but there are some 'special roles' that larger companies still want to hire
funnily enough i still got some messages but i really do not want to risk the trial period rn
how many years of job experience do you have atm?
2 as full time dev, everything else before was just small stuff
Yeah, difficult to get around the trial period
Also not sure if i want to get around, not like it's bad to have it for yourself as well
But it gets easier with a few more years down the road
I've also not heard of anyone having less than 3 months notice period
So it's not the worst having the trial period for both sides
In Sweden, the thing is if you're last in, you're the first out if they need to lay people off
same here
Independent if you're on trial or not
a friend wanted to get into airbus during the layoffs
told him to better stay put for now
Airbus? yeah for sure. People aren't really buying new planes right now...
yeah it was also pre-corona where they laid off people
so not the best move to make either way
Did they lay off white-collar/IT?
Airbus is a big customer to us, and I think we're still in there doing a lot of stuff.
i think a few, not the big part tho
well, i feel for ya... don't get stuck with that SAP/UI5 bullshit though
nothing you should be doing long-term
not planning to
thankfully i only had to touch that part once in the last 3 months
atm mostly backend plus angular8 client
java i presume, considering the sap flair?
correct, only non java stuff at home tho ๐
not hating it but for everything in my hobby it's just overkill
i know :p
i have no bias yet, i'll just adapt to whatever fits
(bias against sap doesnt count right?)
@simple ravine That's the nice thing about having consultants, you can boot them whenever you need, can't you?
bias against sap is just common sense
depends on the contract, but that's the idea of using consultants
well, let's put it this way, we're in places where they've laid off people and we've stayed behind
and judging by my calendar, we're pretty much in demand lol
I can't screenshot it, but yeah, I'm double and triple-booked on meetings, it was so bad I had to block lunch time in my calendar so people don't try to book me, and even then it's bad.
actually.. next week looks really calm
i had 2 weeks of similar things
and a senior that doesnt want me take over some of his responsibilities trying to fuck with me
glad i got called into the old project to just do actual work
can't imagine doing only meetings and presentations
hehe
i whip out my IDE to make sure I still got it, and can run laps around the developers >=)
we have these 'knowledge area networks', where one is Cloud (and .NET)
I'll be presenting some developer stuff there in a couple of weeks.. shit that reminds me, need to prepare
Gonna show them some Dapr/Rudr/OAM (distributed system development stuff). Will be fun!
sounds interesting
but that's the idea of using consultants
That's the idea of bad consultants.. just saying ๐
eh?
The nice thing about consultants is that you can have someone; who either you cannot affort fulltime or he/she does not want to work at your place fulltime. It can bring in so much skill & experience to boost your product, team and company to a next level. Atleast, thats my role ๐ - Not just some random you can lay off easy ๐
^thats imo a better idea for consultants, as it should be
If you make yourself indispensable, you're not gonna be liked. What we try to do is empower the customer as much as possible. That brings them flexibility. It also makes them see the value we bring, which in turn bring us more business and projects.
And making yourself indispensable as a consultant is probably one of the easiest feats.
I'm not saying that, I'm exactly saying what you are saying hehe - I was just merely giving feedback on that idea of consultants, which is not just that they are easy to let go. It should provide so much more value than just that
Well sure. But there's a reason why people don't have in-house developers, as an example, at places where it would be fairly easy to hire (nice company to work with etc). They just want the flexibility to go up and down quick. Especially in countries where employment laws are strong, such as in Sweden and in other parts of Europe
And they don't have to have me full time for an example, and just in the beginning of a project where I have the most impact
well ofcourse ๐ I really prefer gigs where I have the chance to pass on knowledge and see people grow. Most cases I don't do gigs that are only for a few weeks with a fixed (small) project.
I'm not strictly a consultant anymore, with my new role, but I sometimes join the first couple of sprints to hand off a project to the delivery team after advisory and RFP process. So I mostly do advisory to our top 10 strategic customers, nowadays. And for us it's all about long-term relationships as well - I think most serious consultant companies have the same goals there ๐
There's though, the new "gig economy" starting to creep up more and more.
We are serious, but on purpose small - so we have less overhead and less the need to do things we dislike just because of money basically. Eventually this actually worked out really well and by this we mananged to have long term relationships ๐
Well, I work for the sister company who bought Capgemini once in the day
But very good guess!
This is actually my second time at Sogeti
whoah whoah dont be hating on imagenet @worthy cape ๐
Also I wouldnt be so quick to deriding machine learnings "accuracy"
Yeah, state of the art is 70-80 on some tasks - but those happen to be incredibly hard tasks.
Humans often don't perform much better on those tasks ๐
@frigid nova It's more about the expectations on machine learning ("artificial intelligence") from non-technical / semi-technical people in the business. Expecting it to have very high accuracy (i.e. like 99%+) etc
ah yeah - definitely over hyped on the whole
it is possible to get query json from link? for example pathofexile.com/trade/search/Delirium/dVKOIJ
looks like old method doesn't work anymore
before it was pathofexile.com/api/trade/search/Delirium/dVKOIJ?q= to get query back
@chilly oasis Did you see the topmost pin?
Not quite sure if it addresses your question, I've got no clue about that best-effort API.
not exactly what i wanted, but it explains why old method doesn't work
is there a repository for the available poe tools?
https://grinding.zone/ indexes a fair number
Path of Exile HUB
tfw your defunct site hasn't been removed yet
Eternal Labyrinth of Tools.
hi. may i know what is the better tools for price-checking aside from trademacro?
@naive condor not really the channel for recommendation of tools, more about how to make them
how many days did we get through? 3?

Leaving this here: Would be great to lookup in Filterblade what specific rules (on VeryStrict for example) make me see lvl61 Slippers.
Using the search for "Slippers" just gives lots of possibilities but none of it would allow this item to show up so finding the actual rule is kind of hard.
@digital parrot There's an actual Discord for FilterBlade, where it'd assumedly would be quite topical.
Hello all, does anyone know the significance of type in the properties field of an item?
{ "properties": [ { "name": "Armour", "values": [ [ "41", 1 ] ], "displayMode": 0, "type": 16 } ] }
I assume it says if the property is local, implicit, explicit, or crafted. Not sure why there are so many though.
I tried looking online and couldn't find any details.
I believe it is an id to represent what type of property is being described. For example, 18 seems to corresponsd to "energy shield", while "Quality" has a type of 6.
For trade api - does anyone have example of an ItemId for the trade/fetch call
Is this a string, guid, integer...?
2c6891ee1de02ca9566327331b731e5b075003deb8538daf3e6328c48dcf14db
thanks
https://www.pathofexile.com/api/trade/fetch/d6cd125bc7a8dea42ef68c06af2fc54e08d91bc6b394d769848669a291c10c0c,d0ad6732855c45af1b7b9d163c2c194ec281b76da39fd412c135c2fd117e2ad3,a8a447605a78c423c8b7d7d020b2945c3af3bf4c1b8c40ec4e0b16b4e9436443,eb124b18d90f954e592030fa50e09c198e40bc42a95fab30ccbc6a5a84aeacb6,1752527c83bc01c1b74081ff9f83a619874ec464bef4f3daa9cc99a4bb47d2b7,9b96b0d9bd51d9ed43c8ced4c5fbadceca98f40f60aa720a51ac0393dd73ca33,14231a966045884e6656c374573a2b91df4f2426a241dc409b5adaca860513a5,c6cda9c49e983d2c0623f9ecbf25e02097db98946a9de929bb048bf85e0abc1c,4d58a1f00b360b9a8ddb66514a7cb112ff69c5737d607f810e77cb611ba00e43,2304c9396fd318b46f140bcb54b35126da1558226c9eade3132462d5eded18a9?query=opgleLkil
How would I be querying the item id's and the query id now, I used this, but as stated by Novynn it doesn't work anymore
https://www.pathofexile.com/api/trade/search/Delirium?source={%22query%22:{%22filters%22:{%22type_filters%22:{%22filters%22:{%22category%22:{%22option%22:%22jewel%22}}},%22trade_filters%22:{%22filters%22:{%22price%22:{}}}},%22stats%22:[{%22type%22:%22and%22,%22filters%22:[{%22id%22:%22explicit.stat_410939404%22}]}],%22status%22:{%22option%22:%22online%22}},%22sort%22:{%22price%22:%22asc%22}}
Pinned post has a msg about it changing
what exactly does "(different purpose to POST now)" mean in the pinned post?
GET and POST used to do the same thing (search), now POST searches and GET returns the query for that search
I used to call GET with the query param from the browser which doesn't work for the POST request, does it?
I assume this means a GET request will return the query parts?
{"query":{"status":{"option":"any"},"stats":[{"type":"and","filters":[{"id":"pseudo.pseudo_total_lightning_resistance","value":{"min":1},"disabled":false}]}]},"sort":{"price":"asc"}}
If so, can you provide a simple example?
@muted breach Post request definately returns item ids. You can see that in your browser looking at official trade website.
if you're talking about ?q= then no that won't work for POST requests
@dapper scaffold easy to check what is returned like this: https://www.pathofexile.com/api/trade/search/opgleLkil
That is perfect. Thanks a bunch.
@muted breach
which doesn't work for the POST request, does it
Having issues with CORS ? ๐
exactly @civic crane ๐
Any workaround to call the API for item data from the browser? ๐ค
Pretty sure no. Can't set those request headers from within a browser.
Well
Not without a lot of steps.
To make it only work for you.
@muted breach for personal use you can spin up free proxy using cloudflare workers, that will add cors headers
I guess my site (https://poe-jewels.com/ btw) just doesn't work anymore then ๐ฆ I could proxy the request through a backend but that fucks with rate limits then I believe ๐ค
The whole plan for the site was instant item refreshing while editing the desired jewel mods and displaying them on the site itself but I guess thats completely gone now :/
It seems mostly as good to just generate a link that people can click that will open it in a new tab.
The search that is.
It's not really the same though, trying out different jewel mods and changing stuff around is so much better with the items reloading in real-time on the site itself. But if there's nothing I can do, I will have to let the user open tabs to the official site or just give up on the site entirely :/
Yea I know the feeling. Still nice website though. Its really nice to be able to mouse over the cluster mods and actually see what they do.
I had big plans for the site, things like saving your jewels queries and starting live searches for all your queries at once and having items from different live searches be displayed in one list...
The live search stuff is probaby gone too now, I just didn't build it yet.
max of 20 live searches, and there are a few other live search tools that do what you describe
nothing wrong with having more though
POSTing to /api/trade/search should be CORSable looks like it's just set up wrong which I'll get sorted
live searches won't be available via CORS
๐
CORS fixed now
We need on xbox the ability to insta stash into stash tabs eg hold y when stash open will place all items with allocated stash straight in. Then jist got to sort rares etc
There's no tool development for the consoles, and it'd be against ToS to automate to that extent.
@compact isle Thanks for fixing the CORS for POST requests, this saves my site (https://poe-jewels.com/) โค๏ธ
you should ping ferret here to get a tool dev role ๐
@hazy fog Can you give me as tool dev role? ๐
blah blah welcome @muted breach creator of https://poe-jewels.com/ back to sleep 
kek
Hello everyone! I am hoping to educate myself on APIs to work towards accessing PoE's.
What educational resources might you recommend for a beginner? What did you use to become savvy?
Sincerely,
- an exile trying to stay sane
@warm lava Got any intended use case, or just general exploration?
Do look at the pins in this channel too.
@worthy cape great question. I've got access to a reporting platform that I use professionally, but want to get better at it's ability to connect to APIs. In essence, while this is a personal interest of mine, it will have professional development value as well.
I've discovered a handful of resources for PoE in this vein (appreciate people's suggestions above, thank you), but at the end of the day, I run in to, "How do I structure/engineer the code (JSON or otherwise) to pull this data?"
The question is which API you want to pull from. There is character information, trade search, trade listing and probably more
There is also ladder info and third-party stuff like poe.ninja or poe antiquary
I am interested in item price/listing information.
Perhaps I am under a false assumption, that I can learn how to use APIs and just "know" what to do with PoEs.
This league or past leagues?
Would it be a string/value in the query, league? This league though.
Then poe.ninja it is
So you can do 3 different things:
- use trade search API - this will list offers matching your criteria (basically how people search items on trade)
- use publish stash tab API (list all items on public stash tabs)
- query poe.ninja or poe.watch - very good if you want a stable, spam/troll-filtered rough estimated value of specific non-craftable items
- and 3) use 2) underneath
Thank you both. I'll get started there.
if it's of interest, the tool I'm using is called Domo.
@muted breach I looked under Defenses and saw Maximum Life but not the equivalent for mana
I was going to say something else looked off. I couldn't believe there were no results for such a broad search... but the "open on trade" link confirms it. Still kind of shocked
https://www.pathofexile.com/trade/search/Delirium/OEB0r3gFE
@inland kestrel Maximum life is the only mod from Abyss jewels right now, as indicated by its green background. I still need to add all remaining Abyss mods to the site, that takes some time since those have multiple tiers and I want the user to be able to select the minimum tier for each mod (see maximum life). Your search doesn't work because you are looking for max life which is an Abyss mod and a whole bunch of crit mods which are normal jewel mods ๐
Just as a clarification: The site is still in development and a whole lot of data is still missing, but its cool you checked it out already ๐
Ah, right. I purposely left Any Jewel on, but requiring flat max life would dictate otherwise. Thanks for pointing that out
I noticed you disable certain mods based on the filters selected. I wonder if it would be helpful to disable mods when a required selection is mutually exclusive. (e.g., avoid the confusion in my scenario above)
Yes definitely. The overall goal was to be able to select your build on the left and filter out all damage, speed and crit mods that do nothing for your build. The next goal is then to develop a system which finds conflicts and mutual exclusive mods in your selection and displays a warning on the right.
Another cool thing would be to select a cluster jewel enchant and only show the cluster notables which can be rolled on a jewel with the selected enchant.
There are so many more improvements to make before I feel comfortable going public with it, but I really think the site has some potential. It just feels awesome to get your desired jewels by clicking some mods together and with the introduction of cluster notables the site really helps with those.
Hi, Did the sync filters break? All my filters disappeared ?
resets the counter to ยป0ยซ
@earnest radish Yes I have but I decided against it at first. I might take another look into it and attempt to parse the tier and ilvl information for abyss mods for example.
It would actually really help to parse the mods.json, I will definitely consider that. There is no file with only jewel mods or mods of jewel domains, right?
The more I look at this the more I think I should be using the data from RePoe. Thanks for pointing me into the right direction ๐
I encountered a problem of accessing public stash api. No issue for the past few years, but today the link returns a html page to let me input CAPCHA instead of the normal json. If I run curl -XGET -s -D - https://www.pathofexile.com/api/public-stash-tabs | grep -i 'x-rate-limit', it returns nothing. How to resolve this issue?
Not overly helpful, but "worksforme".
Might be particular to the IP range you live on?
If you jam in a session cookie, does it change anything?
maybe the ip was banned... Changed an IP and it worked.
just odd, it didn't happen in the past years though...
Any chance to reverse it? Changing an ip doesn't sound legit.
customer support might be able to help
they've implemented some new rate limits and stuff, possible you went over and got flagged
isn't that cloudflare, contact them
https://support.cloudflare.com/hc/en-us/articles/115003011431#520error
Is this an error your getting trying to hit your own site via a web browser?
I think I just realized something amazing. It's possible to download old GGPKs through Steam
1.0 voice lines, here I comeโฆ
Would this be the place to discuss working on item filters?
Not beginner help, I have a couple resources I threw together today that filter creators might want. Just a couple text files, one organizes armours by droplevel and the other (a little messier) organizes them by type (AR vs EV vs AR/ES and so on) and listed by droplevel
@sacred skiff If it doesn't update automatically, it's not very useful
@worthy cape tl;dr https://github.com/SteamRE/DepotDownloader + https://steamdb.info/depot/238961/history/
Now you can make that folder even bigger!
DropLevel is updated very rarely and in that case it's a simple find and replace
I wonder if this is a rare filesystem that could actually benefit from ZFS deduplication.
ugh, next hurdle: none of the tools work with 1.0.0 dat files ๐
What tools? GGPK format itself seems same enough at least.
Files like Audio/Dialogue/NPC/Maramoa/M02.ogg extract correctly at least.
(this with my own tools, that is)
@worthy cape I mean the files under /Data/, with tools like PyPoE. It's mostly just a matter of figuring out what fields existed in 1.0 and updating the layouts to match
Well, yeah, those are quite a different thing ๐
I see now that you actually said .dat there too.
@worthy cape Do you have any pre-1.0 (2013-10-23) GGPKs, or was that before your time?
I played before, but nothing Iโve saved.
I ran it on windows for my test, less of a mess ^^
ouch, poe steam version is not available in taiwan
IS there any tool out there that allowed for destroying a lot of stuff fast?
@toxic musk No, none allowed
#1โendgame-help but you can make new characters, grab a bunch of shit and delete it
@cosmic saffron feels like the overhead of running through Twilight Strand every time would make that rather impractical
@rapid pagoda You make a PvP-only character for that 
unless I'm mistaken you can drop items in the menagerie, and there's a stash there now
all I know is poeskilltree that has passive tree generator
it tries to generate optimal tree with the attributes you want, but it doesn't support jewels
@slate vector The game files contains a default.hideout, you can obtain it from https://poedb.tw/us/Hideouts
fellas, is there any site from i can dump all the uniques and mods from PoE in common format, like JSON?
first thing that comes in mind is poedb.tw but i need to check if they have an API
Did you look at RePoE?
boy oh boy that looks promising
i don't see uniques though
but that unchecks most of the stuff from my list
thank you
but perhaps i can datamine the wiki for that
@pseudo ocean you can start here https://github.com/Eruyome/scrapeVariableUniqueItems/tree/master/json
@pseudo ocean although i encourage you to use wiki cargo data https://pathofexile.gamepedia.com/Path_of_Exile_Wiki:Data_query_API
@tender radish yeah i'll have to do it, because scripts from scrape repo you linked above are not working anymore, F
Hi all, I have been looking at https://github.com/brather1ng/RePoE/blob/master/RePoE/data/stat_translations/ with the intent of extracting all possible area mods
But it seems that all the JSON files in this directory have large amounts of duplicated data
Is there a way to get only mods of a certain type?
Take the JSON, and filter out what you need, resave
can also try this, @broken cloud : https://stedolan.github.io/jq/
@pseudo ocean
yeah i'll have to do it, because scripts from scrape repo you linked above are not working anymore, F
You shouldn't need to scrape the poe wiki; the wiki has an api (cargo) for querying and obtaining data that populates most of the pages
^that's what i'm talking about, not literally scraping data out of wiki html source lmao
Ah okay. I mean... I didn't read back through chat but is there something in particular you're looking to obtain?
List of all mods linked to item bases i can obtain them on, and list of unique items with mods
Aye. I play around with that late last year and (as I'm sure was suggested above), best bet is to work with the data pulled from pypoe or processed by repoe
I don't believe the wiki exposes the relationships between items and mods in a format that you'd want. Maybe I'm making assumptions though
List of all mods linked to item bases i can obtain them on
game data, i.e. repoe if you are lazy or pypoe if you want to put some effort into it
list of unique items with mods
items and item_mods table on wiki, join via items._pageID=item_mods._pageID
@obtuse citrus yeah i'm going to do that with Wiki API
i already have repoe list, i will take a look at pypoe, i assume it's api binding for getting mods from wiki? or extracting from game files?
anyway i'll use it to make simple webapp to search the uniques and item bases by mod pool, for example if i want to check what uniques and mods are related to "increased hp" it'll be able to help
i've never seen anything like that
I take it you didn't take much of a look at repoe, repoe just exports the gamedata via pypoe into json while reformatting some of it (-- a lot is ommited though). PyPoE is primarily API to various file formats used in the game files. Also houses the bot code used to update the wiki and an UI ggpk browser
i've focused on json data files from repoe repository
You mean like an interactive search? I'd like to do that on the wiki but there are too many items for the wiki to handle, wiki has many static queries on pages though that get relevant stuff
huh
yes, interactive search
the plan is to make some scripts fetching the mod/items data either from repositories, or directly from game files - and pypoe seems like a good tool for it, merging it into an organized database, and creating a front-end for searching
and hosting on github pages if possible, or i'll just self-host it
you'll need the uniques from the wiki since ggg removed the unique relations from the game files
poedb is already cool, however it allows only to list mods per base, not the other way
base items are fine though, for a number of them it's a bit complicated since they're built from various bits of data
what do you mean?
if you want to include things like essences or delve fossils
@worthy cape Thank you! Yesterday it was not downloaded from poedb.tw (404 error). Now it's ok.
did rasmuskl leave?
did rasmuskl leave?
did rasmuskl leave?
is rasmuskl still here
did the poe.ninja guy leave?
rasmuskl
@fickle yew
@delicate ore why repeat question 6 times
PoE Overlay hook the game or retrieve the item data from ctrl+c?
Edit: I asked one of our team members about this and the account locks related to the Overlay recently have been due to it "hammering the ever-living shit out of our website". - Bex
discord glitched
ah yes
because overlay's author's default settings are fucking absurd
I remember this conversation now
perhaps it never got changed after the rate limiting fiasco, and now is just constantly getting timed out
oh I was thinking of exilence
Edit: I asked one of our team members about this and the account locks related to the Overlay recently have been due to it "hammering the ever-living shit out of our website".
wonder if poe.trade always seemed slow because of the old trademacro hammering the ever-living shit out of that website
I don't think that the old trade macro did spam as much
It was way tamer with letting the user edit stuff for example while overlay does only have a second debounce
Should still have been a massive chunk
And the default is low enough it'll do it multiple times before someone might be ready
that seems insane lol, what were those 3 accounts doing? overlay didn't have some secret access to the api or anything
yeah but they could already have done all that without this? seems weird to set up a bot to abuse some 3rd party tool instead of the api itself right
there is a rate limit per ip, unless bot could change ip everytime
they were getting rate limited a good amount it looks like, that mustve not been very effective
oh maybe
wasn't this actually discussed a little while back and the guy didn't change anything?
he change the debounce time from 0.5s to 1.5s
curl -XGET -s -D - https://www.pathofexile.com/api/trade/search/Standard | grep -i 'x-rate-limit'
x-rate-limit-policy: trade-search-request-limit
x-rate-limit-rules: Ip
x-rate-limit-ip: 12:6:60,20:12:300
x-rate-limit-ip-state: 1:6:0,1:12:0
Ah it's 1.5 now, my bad
current debounce time is 1s
0.6.11 (2020-03-24)
update default debounce time to 1s
See, this is why it's a bad idea to build tools in usable languages, haxxors will adapt the codebase into bot fuel ๐
ะพ
i'd recommend to change, since it's slow as hell from my experience. It was very fast at the beginning, but in last few weeks it's almost as slow as old trade macro.
I've switched to Awakened Poe Trade. It works fine.
@pseudo ocean @pseudo ocean this discussion should continue in #1โendgame-help as this channel is for the development of said tools.
Did anyone ever work out how to POST parameters to the exchange site to create a URL?
yes, i know how to query the api and create trade urls, i'm specifically curious about exchange urls
thank you, that second link is a nice resource to have in case i want to query the exchange via api (which would be very useful)
i might be missing something obvious, but how would that lead to the creation of an exchange site url?
awesome!
small warning to people using trade APIs; the upcoming patch changes some things like:
* GET/api/trade/searchand GET/api/trade/exchangeno longer performs searches (different purpose to POST now)
*&q,&source, and&redirectaren't usable on those endpoints anymore, use a&qquery param on/trade/searchand/trade/exchangeto load a search with your query instead
* successful searches will now return their complexity ("complexity": <number>)
just a heads up
very helpful, thank you!
have you confirmed this works?
could you paste an example url here?
alright, thanks ^^ @earnest radish ๐
yea i did misread the second link, i believed you could simply post a query to the url but - you cant!
tysm
alright, keep me posted ^^
Don't obfuscate your user agents
@earnest radish it works! muhahahaha
funnily enough i had tried almost literally that, just made a mistake somewhere in the syntax - i had extracted the parameters from an existing search page but swapped trade and exchange around hehe
tyvm again โค๏ธ
^^
lul
ideally everyone would include their tool name / contact info, we'll probably do a post about user agents when we roll out OAuth properly
is that in the near future?
it's my current high priority task

quietly rolls back plans on having ASCII ding-dongs in the UA header
If you scroll the logs at the right rate you could have a flipbook animation 
Or you could try to scare them with something like an SQL injection, XML bomb, Unicode bomb, etc. as user agent
I love when you stumble upon salty comments in code. Let's you know that someone else was equally fed up with the garbage at some point.
The best comments are sole links to stack overflow. No extra text, just the sole link above some weird code
<colleage> 2008-xx-yy //<project ticket link>: supplier should provide list but only delivers one value

Hey do we have any of the community fork devs on this discord?
oh snap we do have LocalIdentity here
cinnabrit is doing lots of work on it too
cinnabarit does an obscene amount of work for the fork
@dense shore The community fork is maintained by nick_#8198, LocalIdentity#9871 and myself (don't want to ping them)
Thanks, I dm'ed about what I had to LI
I made nick a tool-dev as well since he seemed to be missing the tag
if thats the case i can remove it for now
@jade adder, I am fine having the tag, just never made a point of asking for it. Appreciate you looking out for me though @earnest radish ๐
ok i've restored it, what a roller coaster of emotions

breaking my protocol 
anyways @frigid nova is a contributor to the community fork of pob blah blah welcome
can't track tooldevs unless I check who I mentioned in the channel
Well if it's only about who's a contributor @sleek nacelle deserves the role too :P

of course it is that's a tool you never ha to be the primary dev on it 
another day another tooldev I already made one of these so I'm not feeling creative congrats to @sleek nacelle a contributor to the community fork on tooldev
it's not easy being green
Is there anywhere that provides an aggregated data set for boss item drop rates?
don't believe we know that information as it is entirely server side so not included in the files dissected for data
Right, but we can always collect a mass amount of information an infer the droprates.
Granted, that wouldn't protect us if GGG changed those numbers, but it's a start
A problem with relying on crowdsourcing is that people are untrustworthy and often forgetful.
cf. any attempt to do Timeless Jewel indices.
Well if you make it automated, most people are too lazy to try to meddle with it
And if you can detect anomalies, you can discount those
But yeah, it's technically possible, but highly unlikely it's practically feasible
@ashen dust I've got something like that, i'll pm
Thanks!
Can a filter be used to record dropped items?
Something along the lines of: item -> custom sound -> game loads sound file -> track file access history
Or: item -> custom sound with embedded data -> process audio to extract data
The client log says when you enter an area, and if you can get drop logging working then you have an almost complete solution for recording drop data.
If you want to get the map mod info it's a bit hard. Looking at items which disapear from item stash is useless. So only real solution is manual input (player using ctrl+c on the map) or processing a screenshot.
it's possiable, there was a tool in china forum used many sound file to track dropped items
did they then listen on the audio device for the waveform?
no, on file open
oh, clever
that means they're not caching them in memory, which means you can do some other funky stuff with the filter audio
like create an app that swaps out the files, situational stuff
more for fun though
Adapt the filter based on what items it sees you already have in the stash? ๐ค
Could be useful, maybe for racing, or low level currency in SSF
i was more like... if you're in the shaper area, and an eternal sword drops, u get the john cena sound
otherwise u get a disappointed nothing
yeah, many possibilities there
I'm interested on whats the impact of the client reloading the files. There are constant performance-related topics on reddit and one of the things mentioned continuously is that the game does not load all required assets and freezes during gameplay when they are actually needed.
Some have commented that disabling sound completely makes a noticeable impact, especially on entry-level systems.
Off-by-one:s are the best errors:
I had one of those in my first DAT reader code
Doing some C++20 to refresh my rotting knowledge. There's quite a lot of things I miss from Rust.
Can't say I miss C++, or ever will I think
I haven't done it in like 16-17 years 18 years
I don't even recall learning c++11
Going a bit off topic, but I did not enjoy C++ at all while learning or using it. I've recently been learning Fortran to help a friend. Makes me really appreciate all the nice features C++ has.
Also quite surprising that Fortran is being actively developed. I'm using the 2018 version.
C++ is mainly to replace uses of C. In other places, where specific aspects of C++ are not required there are much better alternatives. Also majority of courses/tutorials are garbage (some don't even compile) and the language philosophy (power with responsibility) only makes it worse in case of badly written guides. JavaScript has the same problem - without the knowledge its hard from beginners viewpoint to judge a tutorial/book.
getting closer to putting all the stuff about mods into database
https://dbdiagram.io/d/5eae792039d18f5553fe9800
if any1 would like to have this db, i can share the script for creating it later
from RePoE data
how can i toggle the poe dev console with an european keyboard?
ctrl+~ doesn't seem to work
well just swapped keyboard lang to en, eyfix
poe dev console?
pob - typo'd
trzing to fix iron commander totems not upping the active totem limit stat
dont ask me why
What would be the way to pull the data from the atlas?
do you mean atlas data in general (like layout & maps) or something like the players progress on it?
eyfix
@grave wren cries in US layout
tried checking out why iron commander totems aren't added to the siege ballista max totem amount but my knowledge of the calc side of pob is way too low :<
Do you have a pastebin I can check?
And the console thing is mentioned in PoBC's CONTRIBUTING btw ๐
no clue how to activate it on qwertz
use a macro? a tool to develop tools....
I just added US layout to Windows and switch between them when I need to toggle
๐คท was easier to swap my layout ^
@lavish gust You can swap between layouts with Alt + Shift, no extra macros needed
๐
I use purely qwerty layout so I never need to swap
most european languages are latin descendants and a regular english keyboard + alt is enough to type all diacritics
Better to have to swap for PoB's console than for umlauts ๐
no real reason to relearn the kb layouts for me
yeah there's no api for it
you either get the user to enter their atlas state or do some fancy ocr (probably against tos) that get invalidated anyway with each update
and unfortunately it's really annoying to input even manually. :/ best way I'm aware of is using the maps tab and that's still pretty tedious
Recently, Bex became more specific about what can and cannot interact with the client
The new rule is something like "Programs are allowed as long as they also work if run on different computer that the one the game client runs on, with a notable exception to clipboard data." I'm not sure if this is intended, but it would rule out all OCR.
Doesn't that also rule out anything that reads from the client log, like most trade assistants and Lab Compass?
That seems perhaps unintentionally broad.
I don't think that's intended
I think it was more about tools that directly interact with the game client
that sounds like a super weird statement
Why cant they just release the atlas map then?
Like why is it such a bad thing to release it for a tool to make it so much easier to read and review?
@round wind Maybe it's unclear what you're looking for. Are you looking for the generic data about how it's laid out, or information about a specific player's atlas progress?
specific players progress like my own
Instead of having to socket and un socket watchstones too see what im missing
If you have a map tab, the little bar under each map indicates its completion state
right no marks is uncleared, 1st line is bonus and 2nd is awakened bonus or w/e
I'd also like a quest state API, but I can see how it could make botting easier
IIRC, there's also a faded greenish state on the first line for "map completed without bonus"
But I am just seeing how to pull data from it outside of the game like an API perhaps to code a pulled data because every other way is ridiculously tedious for 300 objectives
@golden bane PoB devs would probably love an API for bandit quest state. That data's been missing for forever ๐
It's not that bad, theoretically you could infer the bandit state with PoB
Under certain conditions
So basically there is no way to pull atlas API data?
Nope.
Does the map change from leagues?
there is no api so no way to pull it
Yes. And atlas state is per league anyway.
๐ค
Well thanks for your answers folks. Hopefully PoE2 isnt coded like LoL is
everything coded as minions?
everything coded as on-death effect
LoL game (the fullscreen gameplay program) is actually very good. IIRC it is now a stable DirectX 8 + C++ thing and isn't touched much. But the game client/launcher is a worse-than-electon-browser-desktop-app that they said they are finally going to cleanup - https://euw.leagueoflegends.com/en-gb/news/dev/introducing-the-client-cleanup-campaign/
the goals they stated ... for many developers would not even match minimal requirements
like ... they said they want to reduce response time from 800ms to 100
The game isnt touched much because its sphaghetti code from 15 years ago that has been corrupted to a point they need to recode the whole game.
The game is far from good.
Very insightful 
I have no knowledge how much sphagetti they have (but regularly adding a new chamption with UI/input-specific things is definitely a problem) but at least it can have stable 60 FPS even on a quite old computer. But the launcher is like PoE: no matter what god rig you have, it is going to lag.
optimization and raw code is 2 very different things.
GGG definitely has some sphagetti too. Like ... how a normal company can release such updates every 4 months?
At least there is public information that you can pull information from. Like how bad is it really for them to release APIs for the atlas?
What can literally go wrong?
It's a myth that a full rewrite fixes anything
If you can't continually refactor and fight software rot, you'll need to rewrite again and again
Every company does, but which ones suffer the most? Or rather, which company doesnt suffer from it?
Right, leagcy workign code > potentially better new code but there is a technical debt limit past which you better rewrite problematic code. Refactoring is normal, you can't predict everything or optimize for every use case at the same time.
You can and should rewrite code, but only if you have the tests to pull it off (and you should have them!)
"spaghetti code" is a heavily overused term, especially by people with no familiarity with the code they're describing as "spaghetti" ๐
sometimes long structure of if else if is the best implementation
I heard from someone with insight that itโs good that LoL matches only last for at most 50-70 minutes with the client completely restarting between games, as it leaks like a sieve ๐
I'm testing some hardware/driver stuff at work. Because the actual hardware does not yet exist, we are running tests on a specially crafted virtual machine by a 3rd party company. It leaks almost 1 GB / min. Our CI/CD lab needs to have a 64 GB machine to run tests in full scope scenario.
Inside the VM, RAM usage is constant, so we are sure its not our software.
When I played League like... 6+ years ago, it was fine
Nevermind, 10+ years ago ๐
They made it look more pastel-colored and cartoonish a few years back... I didn't really like that much
sugar candy graphics > PoE's vIsUaL cLaRiTy
Please no Path of Fortnite
It was much better before that remake
I don't want PoE to be that far but the devs could definitely pay more attention to the colors. Sirus/Kitava/Malachai all are red on red or black on black.
https://en.wikipedia.org/wiki/DLL_Hell welcome to Windows
In computing, DLL Hell is a term for the complications which arise when one works with dynamic-link libraries (DLLs) used with Microsoft Windows operating systems, particularly legacy 16-bit editions, which all run in a single memory space.
DLL Hell can manifest itself in many...
I'm more interested in why they're still on 3.5, when 4.8 is and has been stable for a long time
we're talking years since 3.5 was deprecated
The .NET frameworks and Visual C++ redistributables are actually meant to solve it but they have so many versions too...
didnt know about the deprecation, then this might be a problem
But I guess it's kinda like the issue with Python: there are still so many users of v2 that even if the official foundation drops support, someone will do it because it's cheaper to support existing than migrate.
the upgrade from 3.5 to 4.8 is pretty decent
nothing like python 2.x to 3.x
never mind, they're still supporting this poor thing
If it's not python, they should obviously upgrade as I guess it is a non-breaking change.
there are now boxes in league
wtf
but IMO this is actually a good change because all F2P players can now get random skins for just playing and participating in events
You can still buy regular champtions for points, they are now just called BE instead of IP.
I have some really old skins, I hope they're still in there
that went legacy before I quit many years ago
And the current iteration of runes is great. Finally no P2W expensive runes, everything is unlocked and old runes have been refunded.
They are more close to what was called "masteries" back then.
but their impact is bigger
ok im confused with the new skills/runes stuff
they merged masteries and runes into 1 new system, which does not require anything to unlock (you may just buy more pages to save)
wtf they changed my Akali's E skill
Akali has been reworked, now she is all about kiting in the ass-ass-in-ass-ass-out style.
And obviously, the 7th (if I count correctly) Ryze "iteration" is again questionable
yup
There were 2 gameplay changes: 1) dragons now give random permanent generic buffs, 2) first towers before 14min are significantly tanker but you get rewarded with gold for damaging them before 14min - this lenthtens the early game phase but rewards you a lot too (approx 1200g for the whole tower damage before 14min)
IMO this was a very good change because now if you have any advantage in a lane you are rewarded immediately (even for partially damaging tower) but the opponent is not instantly crushed from vision and safety, at least before 14min
both losing and winnig sides get better gameplay
still ff at 20 whining kids?
no, it's now FF15
but if you want to surr in the 15-20min timespan, everyone must vote yes
i dont like akali's new E
on the other hand, you can now surr in the 3:00 - 3:30 timespan if your team has an AFK. 2 of 4 votes are enough. Game is cancelled and progress is unaffected.
Yes, that's very good. Especially for ranked
I can already tell that in practically all scenarios people will vote yes to cancel the ranked game if they have an AFK
Well, that was 5 minutes of LoL... enough for another year
back to writing my blog series
what you blogging about?
It's going to be a series of posts with the title I'm not 100% sure of yet, but something in the lines of "The N essential things you need to know as a cloud architect"
First post will be a primer on CAP/PACELC theorem and the fallacies of distributed computing
Not my area, but one of my work colleagues keeps saying "There is no Cloud. It's only someone else's computer.".
The next post will be less daunting, but on how to create resilient applications and systems given public cloud
That sounds like a strange way of putting it...
Cloud is just an umbrella term for "a bunch of stuff in the same place where u provision shit on the fly"
I don't like ubmrella tems.
Well it's better than the alternative in this situation
Right. Where I work, I continuously ask managers to forward my communication / questions directly to appropriate people rather than trying to generalize the topic. I work in rather very precise industry (driver/OS-level/low-lvl infrastructure => pretty much C and C++ only) and I hate when some manager asks me for an opinion/solution idea when they give me umbrellated description of the problem.
They would not like that answer.
Usually I give them very precise answer, so precide they can not understand what I actually mean. Then they assign/find someone else for me that will let me actual problem details.
Well, this might sound shallow as an answer, but your answer shouldn't aim to make them like it, but give your honest opinion. I do that with our clients, and internally and it has resulted in people trust me a lot
Well, many in my team trust me. I'm currently at rather unique position of building/manintaining an infrastructure for low-level testing. In my 7-person team, I am the only one who writes C++ and everyone else is writing Python, on top of what I design and implement. My work is rather simple yet I need to be very careful as many are relying on it for writing tests etc
I can't attribute that to all of my recent success, but a lot of it
I barely write code nowadays.. but I try to get my hands dirty
you just need to find what you like
well, i started freelancing as a developer in 2001
so i've been doing it for a while, and it came to a point where it didn't give me that kick anymore
current project:
type NPCTextAudio struct {
Id string
CharactersKey int64
Text string
Mono_AudioFile string
Stereo_AudioFile string
HasStereo uint8
Flag0 uint8
Inflection string
}
(Golang tools for working with data files. Starting with DAT dissectors; will probably do a GGPK extractor afterwards.)
you don't need the ggpk extractor
there is PyPoE already
nope, I mean you can get the file from patchcdn directly
lol
lmao
Leaving this here for PoB : When Punishment is enabled but another aura exists then only one of the two count (as only one can be applied in most cases).
Actually Punishment gives a buff for 10 seconds which is granted (e.g when curse is applied by Cast on Damage Taken).
The curse is replaced shortly afterwards but the buff stays.
So basically PoB may need some option to calculate with such "overlapping curses and buffs".
@worthy cape looks like some sysadmins will need an extra big cup of coffee right about now
Oracle is apparently actively exploited these days too, which is nice.
oracle is a big pile of dookie
@stiff gulch I think would disagree ๐
Some people say interesting things like "MS SQL Server and others are toy databases in comparison to Oracle"
oracle sql sucks, oracle sql developer sucks, their pricing model sucks. there is nothing you can do to convince me that oracle is better than anything else
Emmitt, I'm in your camp.
I currently have to use oracle right now, and I can't stand it. We had a table that has been failing to replicate for 3 years, and oracle was reporting a success....
It's amazing how bad clean code from uncle Bob is typeset in the ebook version
Code samples suck a lot
Yeah, I noticed that as well. Like, the code will wrap lines sometimes and span pages awkwardly
Yep it's really hard to follow along simetimes
I'm annoyed by how he's die-hard-indoctrinating people on Twitter to go Clojue (or was it Scala?) because it's the "best language"
he is very... opiniated
His favorite language is Clojure
One could almost think he's getting a kickback from someone every time he mentions Clojure heh
I don't really know any technical stuff about clojure, but every time I look at it I want to die
Pretty much that... The only thing that's alluring is Datomic
@velvet fog can't get historical files from patchcdn :)
@pseudo ocean I'm quite aware of pypoe; I have some specific requirements which it doesn't really fit with
I love oracle, but we pay huge money to maintain our database with few thousand tables and few petabytes of data. I don't think that any other solution would work as fast as oracle with IBM support.
we even had first server crash in years this month and replicated db went up in few minutes so nothing really stopped. after 4 days the main db was up and running and data synced in no time
the best thing we done was offloading pictures and other blobs to different instance so oracle restart was fast and easy. we keep mostly current month of data in main db and other gets offloaded to another instance and accessed via db link if needed
I can't seem to find the value of rolled affix mods on the trade api, except from parsing their text. is that right? I can parse it out of item.explicitMods, but I was hoping to find the numeric value somewhere in item.extended.hashes or item.extended.mods
What's the meaning of the numbers on item.extended.hashes anyway?
@oak salmon
got what's in the value under hashes, but I wanted the rolled value without parsing text, 14 in this case
doesnt seem to be anywhere unfortunately
Canโt even parse it consistently as in your example the 2 arrows is actually 1 + 1 ๐
is CORS enabled for /trade/ api?
found answer here: https://www.pathofexile.com/forum/view-thread/2469135/page/1#p21809368
@compact isle is web browser abuse vector much higher than someone writing a script because it's a lot easier to put it in front of a lot of users?
that endpoint is intended for services to consume, not users
I understand, but I want to use notebooks to build some better ways to visualize the economy.
Iโm not actually after the stash tab api, i guess im after the trade which is likely not entirely sanctioned.
Not sure if im allowed to share urls here but i can give an example of a websocket notebook
anyhow thx for the resp
oh looks like i missed an oracle discussion
๐
while it has its problems - its nowhere near the steaming giant mountain of dogpoop that is sql server ๐
oh and pricing wise - once you get big enough - new negotiation options open up, so say for massive cloud deployments its cheaper for us to use oracle than sql server ๐
anyway the rdbms discussion is somewhat like "my favorite brand of beer" discussion
while some technicalities are different they do mostly same things to varying degrees of success
and its healthy for then industry to have some competition
my major problem as a developer is the tooling for oracle is just ass. Oracle SQL Developer and Toad are both big piles of poo, so if someone can point me to a decent "ide" I would have less problems with it. Also, the price points when you are small are brutal. SQL Server Express is a god send when needing production-like data in a development environment with Oracle you basically have to have all your stuff hosted.
Is there a good library for use to parse the json from the stash api into object for storage etc?
or is everyone rolling their own
i poked around a bit on github but nothing stood out as 'the way'.
@flat knot I've been looking recently too. closest I found was https://github.com/ajs/poefixer
On the trade API, are the mods in the same order on item.explicitMods and item.extended.hashes.explicit ?
Hey, does anybody know a tool for better management of guild stash history? (the history can be found at https://www.pathofexile.com/guild/profile/GUILD_ID/stash-history)
Also a tool to track active members of the guild (e.g. https://github.com/M1nistry/GuildStatus but working /updated version)
Could not find anything at https://www.reddit.com/r/pathofexile/comments/fek7kw/compiled_list_of_recently_created_poe_tools_end/ or https://www.reddit.com/r/pathofexile/wiki/tools
Perhaps someone could give me some info about this. I'm trying to parse all the stash data. So, as I'm reading the docs (as far as we can call those 5 lines docs :p ) - I just start off with a request to http://api.pathofexile.com/public-stash-tabs without an id.
Then every next request will use an ID param based on the next_change_id retrieved from its intial request. Honering the ratelimits and such, are there any guaranties on the data fetched? I mean it could be that you miss 10%, 50%, or whatever % of data that has been changed right? Because I ran the live search from the official website, compared this with my tool and I absolutely see no similarities between the data that I fetch and gets posted on the live trade website.
@coral wasp If you started getting without an id, you are starting from the beginning of time - those would be stash tab changes from many years ago
You can see the current change id here https://poe.ninja/stats
If you want some recent data to look at, https://poe.ninja/stats advertises the current next_change_id of the river. As always I forget if someone has recorded an ID around league start or not, might be one in channel history.
๐
a broken watch is right twice a day
int random = 3; // truely random number determined by dice roll
@broken cloud This might be a stupid question (I am very unfamiliar with github), but how does your setup.exe work? I want to make a small change to your program for personal use (tracking the simulacrum splinter counts). Is there any way to make those changes and then download the program again with those changes?
@broken cloud / @earnest radish - Thanks for the reply. I used the ID from poe.ninja, yet I'm still having the same issue that changes do not reflect recent changes (aka compared to the live trade).
I would think that my API fetches would, at some point, be equal to the live trade website. To give you an example; I set the live trade to a specific item. Then I start to sell this item. Yet I never see my sale via the publis stash tabs.
well, actually lol. It seems that its behaving differently now. It has some delay (which I believe is intentional) but it works. Perhaps there was some lag / big delay when I first tested.
I wrote some quick and dirty python code to handle rate limiting by parsing and respecting the headers returned by the poe trade API. maybe it's useful to someone:
https://pastebin.com/MyPESXTa
to use it, call ensureLimit/setup before before/after every request, and it will sleep automatically if necessary:
searchLimiter.ensureLimit()
r = requests.post(item_url, json=criteria)
searchLimiter.setup(r.headers)
lightly tested; not a python pro; feedback welcome; might clean up and push to github someday when I'm done.
@spare glade You can try modifying the installed program directly
Open the app.asar with 7zip or similar (mine is located at C:\Users\<USER>\AppData\Local\Programs\Exile Diary\resources\app.asar)
@coral wasp Yes, there's a 60 second delay - details here https://www.pathofexile.com/forum/view-thread/2036957
Ye I think that sometimes this delay is much higher, when they get hit hard or something. Anyhow it works, so cheers, thanks
Hey guys is there an API for the official Trade? I haven't found one yet ๐ฆ
there is, but it isn't public facing
@broken cloud Thank you! I managed to add the simulacrum splinter counts ๐
Hi all, does anyone know where reminder text is stored? Like "enemies standing in smoke clouds are blinded" here
@broken cloud ClientStrings.dat, id: "ReminderTextSmokeCloud", rowID: 1984
In preparation for the next league - any ideas how to test program behavior with start-of-league API (or lack of it), or, maybe, someone had a list of most commonly encountered errors?
BTW, I got part of my Go data dumper tool uploaded -- https://github.com/duskwuff/pogo
is GGG ok with embedding the PoE/Item/DeferredItemRenderer from the official site to a 3rd party site? any experience?
Idk but there's https://github.com/xKynn/PoE.py which can also render items
oh neat, however rendering every item as picture on the server and send it to the client seems cumbersome. would really prefer to use the official js renderer if thats allowed. but i guess that would be my alternate choice. i have no intend to write my own item renderer
Well, depending on how deep you want to go with Python, there are ways to render it client-side
I don't know which one of these supports PIL, but probably at least one of them: https://pythontips.com/2019/05/22/running-python-in-the-browser/
That diagram makes zero sense
I knew you would comment on this ๐
Yeah, it's more about the comparison in the article between the Python browser implementations
hehe
Well, HTTP vs "Function calls" is like comparing apples and oranges
Sure I guess it's "possible" but people go out of their way with crazy ideas, especially in academia
Like there's a line between "This is a technically interesting problem to solve" and "This will not solve anything in a feasible way"
i.e.
Itโs an even bigger download than PyPy.js (that example is around 50MB), but as Mozilla point out, a good browser will cache that for you. And for a data processing notebook, waiting a few seconds for the page to load is not a problem.
Academia kind of is the reason this is even viable in the first place, with the scientific Python stack being ported to the web
I don't think I would solve this problem that way, but hey, it's there
Like, take PoE for an example. No gamer will sit and wait for a 50 mb download to view some item render ๐
Its not feasible.. imagine the bandwidth cost for that poor guy if the thing becomes popular
You could argue that people and wait and sit for the client to be downloaded in order to have items r ender
You wouldn't use Pyodide for this use case, so that's a bad argument
But if you want to use python client-side you need some interpreter/transpiler/wasm-thing
Have you read the article?
skimmed it
It shows
so enlighten me, what would you use in his case
the article presents different methods
Skulpt if it supports PIL, if not there is a pure Python implementation of PIL you could use to compile to JS
Btw the "Python objects" in the diagram also doesn't make much sense
Everything's an object in Python, so if you use JSON, it's a Python object, even a valid dict in most cases
There are many flaws in that diagram yes.
skulpt was actually pretty small, 100kb
thats neat
however i dont think it comes with everthing included? like the libs to render the pngs
obviously
well, to be frank, u can do a lot with javascript nowadays... making a png is possible
but i dont see the problem with what u wanna do
if u would have u just made an item rendered in javascript instead of resarching how to use python, u would have had ur own by now ๐
To get back on topic: probably best to just use the official renderer until you are told not to do so
i might try that, yeah.
if u would have u just made an item rendered in javascript instead of resarching how to use python, u would have had ur own by now ๐
@simple ravine ahh, don't wanna mess with that. you know poe and its special cases. i bet the renderer is filled with that
depends what input you're using
if you use the stuff from JSON, it's fairly straight forward
well i havent looked in like 2 leagues... but yeah
ouch, one of their own examples are throwing exceptions
@simple ravine https://www.humblebundle.com/books/c-net-core-packt-books any idea if those cover modern c# well?
What languages do u know now, and how u define 'well'... I don't recognize these names, so it's likely they're not the "A-level" authors.
but for the cost, it's definitely worth it
java including ee, python, typescript, php
packt books are kinda wonky in my experience so i thought i'd ask beforehnad
perhaps grab the โฌ1 package, and take the first book
and then dive into a couple of O'Reilly books
yep i guess thats a good plan
Jon Skeet knows C# better than anyone in this world, probably better than Anders himself.
also super cheap, thanks for the rec
And if you know Java, I think this book can do a good job for you.
Manning pubs are also real good
dont think i had books form that publisher yet
Make sure you buy the last edition (4th)
A lot of new things changed since C# 7 and C# 8 that is very convenient to know.
(no breaking changes though, so nothing to panic about)
might be fun to delve into c# a bit more than simple unity scripting
just need a project to do in parallel
yeah, some lessons is best learnt the hard way urself ๐
i just need to get into books a bit more, usually i just dig into stuff myself but that seems like wasting time you could spend nicer
i haven't read a full book in a long time, and i really wish i had the attention span for it
i am like 70% through clean code, so thats something for me
https://www.amazon.com/Concurrency-Cookbook-Asynchronous-Multithreaded-Programming/dp/149205450X once u want to go a bit deeper into concurrency etc, which one one of the strengths of C#
clean code is good, unfortunately java iirc
yeah and badly typeset ebook
they're sufficiently close enough for you to recognize a lot of things
been coaching a dev who is quite ambitious at work... he read the book 'code complete' and though it was well worth the time.
nice, some parts of the clean code just seem a bit too academic in nature but maybe thats just my warped view with my current monolith
uncle bob is a special kind of man
it feels like his advice can easily lead to lots of complex code if applied too rigorously
had a colleague in my team that swore on uncle bob and he made some questionable stuff
or at least taken in the wrong way, for sure
Fuck Bob. That's all.
hehe

he's very opinionated to say the least
a similar type of person is our "research and innovation" guy
or one of them
and wonders why he barely gets asked stuff compared to the other guy
@simple ravine My experience has generally been that technical books in humble bundles are generally kinda garbage
that seems to span a lot of publishers then
It does. There's a certain style of book they tend to end up with a lot of, though
If I had to characterize it, I'd call it "highly verbose but poorly explained walkthroughs of simple projects"
hm alright
and i have found out why i dislike most programming books
can we still not at least put colors in ebooks
or... ah yes, let's fill a page with a screenshot of a captcha (this is from the first book in the bundle)
it's like the commercially published version of putting illustrations in your high school report to hit the target page count
There seems to be a lot of 'udacity'-type of people, especially from India, but also from USA that attempt to write books on a subject, and they don't succeed very well. That's why I appreciate Manning and O'Reilly more, as they work with people who have previously shown their expertise in the area (i.e. thought leaders), like Eric Lippert, etc
^ lol on that comment
stop reading that book pronto
anyone know what encoding is used for official site trade urls?
if you add your own queries
might be a dumb question, but its different from the default python url encoding
if anyone sees my previous question - the answer is: no encoding needed! My problem was somewhere else
Hi folks! This seems like a good place to put this.
I created a Userscript for Greasemonkey triggering on your stash tab info in browser, it will lay out all tabs (with 1 click switch or submit stash to poeprices) and also visualise 6 socket items and rates unique perfectness (wip, this is buggy for some mods).
https://pastebin.com/BJN123SU
Install the script, go to
https://www.pathofexile.com/character-window/get-stash-items?league=Delirium&tabs=1&tabIndex=13&accountName=YOUR_ACCOUNT_NAME
put your account name in the url and enjoy one button pricechecking whole stashes!
I know it looks shitty but imo it actually made greedy drop stash cleareing a breeze. Its actually quite cool what you can accomplish with the Wiki Cargoes!
Also a bad thing is that Poeprices.info stash pricing is actually more accurate for uniques than rares, as they cant test all mod combinations... Is there an accurate solution for pricing rares out there?
there's no easy, clean solution for pricing rares publicly available, no
and there are doubts that there's anything private
i mean you could probably cloud compute that 'easily'.
but yeah i was always wondering how others are pricechecking. I only use PoE TradeMacro and poeprices.info.
also i dont care about clean or easy. pulling mods from wiki cargo isnt exactly a breeze either.
As Jeff said - there is no publicly available service for pricing rares other than poeprices
If i wanted to make some native app with the stash tab api. Is that possible? how does auth work?
You might want to reference other apps which currently use the stash tab api, like exilence
cloud compute that 'easily'
๐ I'll give you $100 if you create something accurate
Only Azure makes it possible.
Just saw a post on the reddit about Overwolf, a framework for creating third-party overlay apps for games
It has support for PoE, and claims to be able to detect "boss killed" events: https://overwolf.github.io/docs/api/overwolf-games-events-path-of-exile
Please read the overwolf.games.events documentation page to learn how to use Overwolf game events.
{"events":[{"name":"boss_kill","data":"Fire Fury"}]}
Is there a way to do this that does not break the terms of service (no reading memory or such)? I would be very interested in this if it were possible
OverWolf injects OWClient.dll and OWExplorer.dll into exe
Woah is that legal? It seems very illegal
I see... but to go as far as being able to detect "a boss named xxxx was killed," wouldn't this count as a prohibited interaction with the client?
I once looked at the code of a certain prohibited heads up display and it was beyond my level, but wouldn't it be that kind of thing?
If you can assert this information from the text log (client.txt) it should be fine. However, if you discern this thanks to the DirectX hook, it's pretty safe to say that's not kosher.
But it also depends a little what you do with that information. Knowing that you killed a boss, and just storing that or congratulating you for killing Shaper for an example, doesn't give you much of a competitive advantage. However, what is not allowed is act upon that information in-game
Had to leave this here https://i.redd.it/3a4bzppsi8y41.jpg
is there any tool that auto sort item in stash?
not the place for the question, but if you're planning on making one it breaks tos so be careful
oh ok
do someone know how many stashes gets updated per second using http://api.pathofexile.com/public-stash-tabs ?
I did some benchmarking and currently im managing to store about 3 stashes/sec in a db ๐
@simple ravine hm so kickstarter ๐ would be basically an addon to poeprices or justa little different logic. vut 100$ probably aws instance cost for one month ๐ Athough...
I mean the heavy lifting has to be done by GGG trade/forum/whateveridontlknow API anyway. basically what you need is a lot of tables that save mod_combination[tieravg] -> avg market price
and this for every permutation of base item and mod tier. Won't cover corrupted implicits, influence, item level and such but yea it would be a start
I guess poeprices just searches for item base and every single mod for themselves and guesses a price with all the abvailabe mods. Thats also a way to do it but less accurate, as you usually go for mod combinations and free affixes for multimod or slamming
thus, always doing the 'alt+shift+d' macro search with all available mods will already yield a more accurate result i guess
@stuck blaze I understand why they use a distributed system now. its amazing how much their api can stand while still being so stable xD
๐
the cascading delete on all items takes a long time when removing a stash
I wonder if it's possible to use more threads somehow
but like.. i'm doing 3 stashes/sec right now. If 5000 gets updated per second I'll never be able to catchup with the source
oh for learning im just trying to make a poe.trade clone
oh alright! cool project!

