#tooldev-general

1 messages ยท Page 34 of 1

granite rose
#

I don't know how to set a time period though, but looks like my query uses recent data somehow because The Emperor's Trove was 5 chaos before the patch.

desert needle
#

to set a time period, add a boolean match query for range that is gte a time range period against shop.updated, i.e. now-7d/d will give you only items updated in the last 7 days

granite rose
#

oh, thanks

chrome topaz
#

@compact isle online api is broken

compact isle
#

@chrome topaz is it all good now?

chrome topaz
#

@compact isle still broken

#

returning 0 users

compact isle
#

investigating it now

#

should be working again now, thanks for letting us know!

chrome topaz
#

yeah it works now, thanks for fixing it

desert needle
#

ah, looks like the stash tab api was giving problems from 4:50 to 5:15 EST as well

#

that post might've just coincided with that

#

er, EDT, anyway

compact isle
#

apparently something was acting up according to our server guys

#

so it was probably that

desert needle
#

yeah looks like it got really really slow for a couple minutes, then stopped responding, then started responding slowly, then started working ok again over 20min

compact isle
#

I really want to set up something at the office that follows the river and makes a warning light flash when something is wrong with it

#

๐Ÿ˜„

fiery gyro
trail echo
#

Added info for ~11 maps.

fiery gyro
#

Thanks man, I went through all my map stashes and thats as far as I could get

trail echo
#

Not a prob.

compact isle
#

having a few issues with the website currently

mortal bone
#

someone pushed a changed that didn't work ๐Ÿ˜‰ haha

compact isle
#

eh, seems that the database just decided to explode

trail echo
#

RIP Database/s

desert roost
#

Did Torr jump out of the db?

compact isle
#

I think someone Vaaled it ๐Ÿ˜ฆ

#

and got that weird unlinked socket thing

trail echo
#

I may or may not have broken a 6l Tabula without bricking it.

#

(obviously not, can't unlink a 6l w/ a vaal, or can you?)

compact isle
#

you can if it turns into a rare I mean ๐Ÿ˜„

trail echo
#

That'd be bricking a Tabula ๐Ÿ˜ซ

old beacon
#

bricked like a wii u playing mighty number 9

trail echo
#

good thing I don't have a wii u (yet) :P

#

still debating whether to get one or not for Wind Waker + Twilight Princess HD.

pulsar moat
#

You can get a Tabula uncorrupted non 6 linked.

old beacon
#

divcard on a low level toon that results in <6 socks?

trail echo
#

darn

pulsar moat
#

Actually.

#

conversation happening right now

old beacon
#

for reel

#

hohoho

trail echo
#

Gosh darned fishing memes

pulsar moat
trail echo
#

I was gonna say more about Fishing, but [Removed]

#

there, better.

compact isle
#

looks like it was just a connection issue somewhere, should be back up and running again now

trail echo
#

@fiery gyro Looks like someone beat me to the punch on unique maps, its filled out!

compact isle
#

they must've been pretty fast ๐Ÿ˜‰

trail echo
#

Yup, was buying unique maps too.

fiery gyro
#

wow awesome i Haven't checked it! i put it up on reddit a bit ago

#

just got local files working so you can use mp3s from your computer as the custom soundtrack

trail echo
#

Nice! :P

fiery gyro
trail echo
#

Works really well, thank you @fiery gyro :)

trail echo
#

RIP PvP match lists.

compact isle
#

did something happen to them?

trail echo
#

Timed out.

compact isle
#

rip

trail echo
#

Wanted to do some 1v1's for fun, too. Mainly to test out non-corrupted Crit Puncture and Ele Blast Rain.

#

I could do that through Sarn Arena, yes, but I just like 1v1's more than 5v1+

compact isle
#

fair enough

desert needle
#

fyi for anyone indexing forum items, it looks like some minor changes to the html layout may have broken some indexers, depending on what you're looking for

compact isle
#

I should really get you guys to PM me what you're looking for when parsing so I don't mess it up ๐Ÿ˜›

desert needle
#

haha

#

that's part of the reason I don't parse the forums anymore!

#

you shouldn't have to worry about that

compact isle
#

yeah well, we should really have an API for that stuff

#

but the backend for it is so weird and painful to support let alone move away from

desert needle
#

yeah absolutely, I mean, in an ideal world you'd have an api actually designed for item indexing ๐Ÿ˜‰ but the stash tab api works well enough for what it is, especially compared to the forums, though I hate that items are displayed in forum style json.

#

I was hoping at some point Chris would decide to open that up a little bit so the forums could be officially killed off, it just seems not at all worth it to host that part, then you could also make some proper JSON data for the API

#

but I don't even want to imagine the spaghetti on that backend

compact isle
#

yeah, hopefully we get some free time to work on that stuff soon

desert needle
#

buys more mtx

mortal bone
#

Web development is never pretty

compact isle
#

^

jovial bear
#

I do agree (look what I'm currently playing at)

desert needle
#
      "40% increased Spell Damage",
      "Adds 22 to 44 Physical Damage",
      "16% increased Fire Damage",
      "76% increased Critical Strike Chance for Spells",
      "+23 to maximum Mana",
      "10% chance to gain a Power, Frenzy or Endurance Charge on Kill"
   ]```
#

etc.

woeful sphinx
#

They changed "Adds 22-44 Physical Damage" to "Adds 22 to 44 Physical Damage"

desert needle
#

oh shit

#

that is a huge change, I didn't even notice

#

that will break every indexer, nice.

#

good catch

woeful sphinx
jovial bear
#

I'm curious now

desert needle
#

interesting

chrome topaz
#

thanks ggg

desert needle
#

the real question is what else changed

#

at least properties haven't been changed so far:

#
         "displayMode" : 0,
         "name" : "Physical Damage",
         "values" : [
            [
               "49-95",
               1
            ]
         ]
      },```
#

but who knows if that's gonna happen too, or where else it'll happen

#

I wonder if those new mods are boolean or if the values (i.e. 10% chance) can change

old beacon
#

do they supply you with a list of new mods that you can add to your tools or do you just have to add them in on the fly as the league is being discovered

#

or NDA lol

desert needle
#

we have to discover them on the fly, it's a pain

#

sometimes like this they give warnings but never from a developer perspective, it's always just a preview

#

but like, say Offerings for the Goddess or whatever, we had no idea what those would look like until people started selling them in Prophecy

jovial bear
#

It's a shame that they apparently want to promote external tools and stuff but just do not communicate , or when they do it's cryptic..

desert needle
#

yeah it's a bit of a bizarre conundrum

#

the really unfortunate bit is that as a result, when third party tools break because of things like that, the third party tool creators get blamed

old beacon
#

would you prefer an NDA and the list of the new mods, then just push a new version live that hopefully doesnt break when the new leagues start?

desert needle
#

well, at least for me, I don't care necessarily about the specifics of mods, just the format. The mods need to be auto-detected to be effective.

#

But that auto-detection is set up within certain parameters that we're used to, so if those parameters change, we absolutely need to know.

#

I would definitely like to see community posts from GGG that highlight things like that. "In the upcoming version we are changing - to to, here are a few examples." etc.

#

"New items for X league will have a frameType of 9" stuff like that

chrome topaz
#

no NDA please, thank you very much

#

true gentlemen trust each other

desert needle
#

indeed

compact isle
#

looks like there have been a lot of mod description changes ๐Ÿ˜ฆ

jovial bear
#

Good luck to everyone who is running tools ^^'

compact isle
#

pretty much, I thought I could just build a list up but it looks like there were a lot of changes

jovial bear
#

I'ld like to help too, but working all day on angular/symfony/other web things, I just don't find the motivation to go back into it at home x)

compact isle
#

I usually use different kinds of technology for hobby projects to get a wide variety ๐Ÿ˜„ otherwise it would start to get boring fast

compact isle
#

realm is currently down, should be back up soon

chrome topaz
#

surely the changes in mod naming are going to trigger an update in the stash api so that I don't have to reindex everything from zero?

compact isle
#

it won't trigger an update since the items don't change

summer shuttle
#

Well, now we know why. The essences have ranges of mods they call roll: (10-20) to (30-40)

subtle lion
#

@compact isle any itemfilter improvements coming in 2.4?

desert roost
#

Not sure if itemfilter would fall under his web dev department.

subtle lion
#

xD

summer shuttle
#

Item filters seem pretty solid at the moment. What improvements are you looking for?

subtle lion
#

affixes

#

we have Cloak of Tawm'r Isley

#

uber izaro chests loot

old beacon
#

also warbands weapon prefixes

#

or any warbands affixes

compact isle
#

yeah that's quite out of my area lol, I don't know of any plans for supporting filtering by affixes

compact isle
#

Just a heads up: with 2.4.0 the base website HTML will change somewhat, so hopefully you're using selectors that don't include #siteContainer, #siteCentered and all that

desert needle
desert roost
#

Thanks for all the work you did put into it

timid crest
#

oh ๐Ÿ˜ฆ

desert needle
#

maybe someone will take over the node.js rewrite!

#

I think a lot of stuff is going to have to be added/redone for Atlas of World regardless

#

that whole pipeline has just become excessively complex anyway, a full rewrite is needed

pseudo ocean
#

RIP

timid crest
#

thanks for your tools, i've found price macro one the most useful for my needs. Gotta write my own simple price lookup script then, i guess

pseudo ocean
#

yeh

desert needle
#

it's not too hard to write something that parses poe.trade, my whole tool journey started with doing that

#

though obviously that's not something you want to do too often since that's not how the site was intended to be used

pseudo ocean
#

does he allow that? i was told not to because 'xyz will block you' or some such

timid crest
#

well he technically allows you to make the same search once each second

pseudo ocean
#

my dream app to make would be one that lets a user copy+paste an item into a textbox and get a machine learned price check

#

true

uneven meteor
#

You know

#

I think you could get around to it

desert needle
#

I can't speak for him currently, just can say that at one time he was okay with it as long as you did not do it very often. The big problem has always been tools that hit it a lot without using the FE.

uneven meteor
#

but the big problem is not so much valuing an item in terms of scale

#

But more so the fact that the currency flucuates in value

timid crest
#

FE?

desert needle
#

the genetic algorithm for pricing thing was a holy grail for awhile for me

#

(FE = front end)

#

but the more I messed around with it the more it seemed to be almost random

uneven meteor
#

I bet

desert needle
#

people price stuff randomly as hell, finding a real trend in there is difficult

pseudo ocean
#

it should be a bell curve

#

my guess

#

do you have any tips for hosting?

desert needle
#

you can run your own indexer and ES index really easily with any decent system as long as you're just querying it yourself

pseudo ocean
#

yeh

#

kk

desert needle
#

I have a "test" node that is like a generic box with 16gb of ram, runs it fine if you don't mind waiting 8-10s for big aggregations

timid crest
#

i think you could maybe achieve decent results for most rare items (where hp and resists matter the most usually), but jewelry is extremely complicated

desert needle
#

having an ssd is the most important part if you don't have a lot of ram

pseudo ocean
uneven meteor
#

Yeah

desert needle
#

striker, part of the problem is that training data is shit

uneven meteor
#

True

desert needle
#

if every 3x tier 1 resist +t1 life ring was priced in the 30-60 chaos range, that's ok

#

but instead some will be 10c and others will be 5ex

pseudo ocean
#

yeh

desert needle
#

and it's all over the f'ing map

pseudo ocean
#

remove people from the equation

timid crest
#

everything else with fixed or semifixed attributes is really easy compared to rares, ye

desert needle
#

even unique items are all over the place, which is hilarious

pseudo ocean
#

yeah......

uneven meteor
#

Well thats cause people are idiots.

desert needle
#

you get something like a random helmet that the variance on it means nothing, and people will price it from 6 alts to 30c

uneven meteor
#

Yeah

#

Like I was looking at some specific item stats earlier today.

#

On rares thouhg

#

But the only 2 availabe with price

#

were priced 15 ex

#

and 45 ex respectively

#

which was ridiculous

#

All of the ones in PSC

#

were ~1ex

#

which made more sense.

timid crest
#

it all depends on how specific the search is and how big the market is

#

maybe if you train the tool over the course of the whole league, it starts producing good results

uneven meteor
#

But what about flucutations in currency valuation

desert needle
#

ya I mean, personally I almost never pay more than 3-4c for most rares, and I find it hilarious how often I can find a ring with 80%+ resists, +70 life, and various other stats with an open crafting mod for like 2c

uneven meteor
#

Yeah

timid crest
#

meh it's just my theory anyway, i never even came close to developing this kind of tool

desert needle
#

currency valuation is something that theoretically can be tracked now if people use the stash tab's for it, but it requires extra currency specific parsing

uneven meteor
#

Mmhmm.

#

And waht do you do about situations like this?

pseudo ocean
#

i always wonder if poe.trade knows value of currency based on what people throw on currency.poe.trade

uneven meteor
#

I think he uses it abit

#

because the ratios get really stable

#

if you look at the best ratios on either side

desert needle
#

there is a specific genetic algorithm that theoretically can do the rare pricing thing, I can't remember what it's called, basically it's designed to predict the outcome (cost) based on various input parameters (mods) and how they are grouped together

timid crest
#

with currency it might be a good idea to just anchor to a specific currency type. I think this is actually what happens in peoples' heads too, so

desert needle
#

but I think you really need to curate the training data, the first time I messed with it my results were all over the map

#

I think poeprice.info does a similar thing, which is also why those results are so weird

uneven meteor
#

I think attempting this kind of thing is a pointless venture

#

In terms of actual results

#

as an academic challenge

#

its certainly interesting.

desert needle
#

ya, perfectly stated ๐Ÿ˜ƒ

pseudo ocean
#

it's a huge issue if you ask me

#

even mathl had to make a video to ask people to stop whispering him for price check

uneven meteor
#

I'm surprised streamers

pseudo ocean
#

and global chat is constantly "price check??? (ring)"

uneven meteor
#

even took the time to price check things

timid crest
#

basically unless it's a vastly complicated tool, it's not gonna help you much anyway - you would know the "easy" price checks on your own. But would be fun to make that

uneven meteor
#

I was thinking about making a tool to help me flip currency

#

Where it would tell me when to update my prices and such

timid crest
#

i kinda made one

uneven meteor
#

I made in excel spreadsheet

#

But I wanted one so i could always keep top slot on poe.trade, currency

pseudo ocean
#

aims to do that

desert needle
#

you could do the same thing as Retik's tool with currency if you indexed it properly

#

from an indexing perspective, it would actually be relatively easy to write a currency only consumer of the premium stash tab API

uneven meteor
#

I tried looking at the GGG json API

#

and it was a mess

desert needle
#

store the data in ES for historical trending information and alert in realtime when people post good stuff

#

oh yeah for items especially it's terrible, but currency is pretty simple to parse

uneven meteor
#

I mean the data was obviously organized

#

but I can't tell the format

#

I looked around for a reference

#

but never found one.

desert needle
#

it's formatted as a data source for the javascript image overlay, so everything is designed to just display an in-game style image

uneven meteor
#

Wow.

desert needle
#

ya the majority of indexing items is analyzing that

#

there's a bunch of stuff that makes no sense from a "real" JSON format perspective

pseudo ocean
#

i love this rant

desert needle
#

but again currency is very easy, just search for the frameType, item names, stack size property, and note, done! ๐Ÿ˜„

uneven meteor
#

'frameType'

#

Is that like

#

what visual format to use?

#

Man as much as I like having a public API

desert needle
#

yeah

uneven meteor
#

It seems ridiculously difficult to consume

desert needle
#

frametype is the color of the background or something

uneven meteor
#

Wow.

desert needle
#
1 = magic
2 = rare
3 = unique
4 = gem
5 = currency
6 = divination card
7 = quest item
8 = prophecy```
uneven meteor
#

oh

#

its not even a string

#

its a number?

desert needle
#

that's still probably 80-90% accurate, though some things have been added and changed since

uneven meteor
#

'~~~~ !!!!! b/o 3 !!!!!! EXALTED ORBS !!!~~!!!~@@ WUUUU I HATE YOU PEOPLE WHY DO YOU DO THIS'

#

lawl

desert needle
#

haha, forum parsing, shudder

compact isle
#

sad to see you go @desert needle ๐Ÿ˜ฆ

chrome topaz
#

maybe ggg should host one ๐Ÿ˜›

steep hinge
#

^ yeah... really liked your post @desert needle well said. Beautiful API that'll be sorely missed, was just using it in a new tool too.

pulsar moat
#

Sad to see you go @trackpete , I used your API extensively during rophecy

jovial bear
#

Sad too, I was using the unique tool and exiletra.de. I hope that it will make GGG think about the whole problem of relying only on external tools produced by the community

pulsar moat
#

I wonder how much processing power and RAM I will need to log and report changes in currency prices (not new posts, just updates)

steep hinge
#

@jovial bear Just take poe.trade down for 12 hours 1 week into a new league and see hell break loose, GGG would be very aware of the problem.

jovial bear
#

Yeah sure, but unfortunatelly, I think that it would be more the devs of the tools that would be flamed and I'm not sure GGG is able to answer to this kind of emergency

chrome topaz
#

why would i take poe.trade down that would be super stupid

steep hinge
#

To demonstrate their dependency on one external community member.

#

also, ty for your work in the vita scene โค

chrome topaz
#

don't tell them

#

is a secret

mortal bone
#

Why shut it down haha too much revenue :p

desert needle
#

multiplicity - it doesn't take much to log currency and general item information from a server power perspective, as long as you don't mind having some slow queries.

#

I didn't have any problem running a stash api service on a small old $200 workstation with one six core cpu and 16GB ram - it just took 5-10s for any big queries

#

most of the power required is just to make sure you can serve responses in a second

#

also if you're doing it at home it's some insane amount of bandwidth like 500gb+/mo especially at league start

jovial bear
#

Hello @compact isle I know this is not the perfect place but here is a small bug report for the web team : you can't scroll in the list of characters of someone's profile on firefox. It works on chrome.

desert roost
#

@jovial bear If you're really looking to submit a bug report, you should include more details. Providing your Firefox version and your operating system is a good start.

jovial bear
#

You're right sorry, : el capitan, firefox 47.0.1

jovial bear
#

The issue is still present with firefox 48.0 (el capitan also)

compact isle
#

works on FF48 on Windows for me, definitely something weird there

desert roost
#

@jovial bear Have any addons?

jovial bear
#

Mmm let me see

#

Ublock Origin that's all, I'll try without

#

nope, still nothing :

compact isle
#

oh it just doesn't show at all

jovial bear
#

the same page on chrome

compact isle
#

I'm guessing there's nothing in the web console?

jovial bear
#

Oh wait I'll try something

#

I had an idea but no

#

And the console shows nothing relevant

#

in ff

#

in chrome

#

the whole scroll bar is missing

compact isle
#

yeah, some JS isn't being run

jovial bear
#

strange

compact isle
#

ah

#

I guess we don't handle the case where it isn't loaded correctly

jovial bear
#

good find !

#

It's super nice to be able to speak directly with the devs and give feedback this easily ๐Ÿ˜ƒ

compact isle
#

it's all I'm used to really ๐Ÿ˜„

pulsar moat
#

@trackpete I've got a gaming PC which should do fine and uncapped gigabit internet from my university. Sounds like that's my last project for the summer then!

little nebula
pseudo ocean
#

Every race event is a league with a smaller window between startDate and endDate

#

but I doubt that is it.

little nebula
#

Yeah, that is not it. I need the API short name that I can query race information with. I guess I'll just wait until the race starts and see if it's added to activeleagues

desert needle
#

the exiletools ladder stuff only handles leagues

#

the problem is that GGG's API is terrible and already requires so many requests to stay updated with 4 leagues active that I have to run requests through a separate system from everything else to avoid getting rate limited, adding any races to that is basically impossible because I get immediately IP banned

little nebula
desert needle
#

If you just want a one time report and have some basic programming ability, you can just pull the entire ladder and parse it without too much effort going into it. Some people posted some extracted data from the last SSF race on reddit, I'm sure someone will post something up for this one too. I mean, I doubt we're suddenly going to see 5000 guardians because it was the least used last time. ๐Ÿ˜‰

little nebula
#

Yeah, I'll just do it myself. Thanks

desert needle
#

cheers!

pseudo ocean
#

Yeah @little nebula , I was thinking of doing the same. Best to write a parser for the CSV file. If it's of any consolation, most races like this don't tend to spread out in numbers. There will definitely be more Elementalists and Slayers (30%+ altogether) than anything again. Prizes don't change people's preferences in playstyle too much

desert needle
#

iirc the downside of the csv files is that it used to only go to 10k

#

but it was nice that you could pull 5x 2k and punch it into excel

little nebula
#

What is the maximum api calls I can make in an hour? Don't want to find out the hard way

desert needle
#

it's rate limiting over some period of time, you will get a back off response and be dropped for about fiveminutes if you go over

#

iif you can safely make around 4-5 requests/s to the ladder stuff without a problem

#

but if you do more than that for any extended period you'll probably trip it

#

they don't publish the exact information, but I expect it's probably something like more than 100 requests every 60s or something

heavy vortex
#

hey pete, just dropping in to say im sorry to see you go but understand, thanks for your countless hours maintaining this service and the APIs!

desert needle
#

cheers mate!

#

god this whole essence thing makes me glad I'm giving up on the indexer, would have to completely redesign things if they're going to allow any item to have any mod

mortal bone
#

Characters and stash tabs are 45 calls within a 60 second span

pine coral
#

Thanks for all the great work Pete. The tireless hours in the background, only to have people asking "why doesn't it have X? Why is Y down?" Life as a dev and a gamer. โค

#

Maybe this will motivate me to learn more about how it all works. I think item parsing is next on my list, and it's scary.

chrome topaz
#

@compact isle any chance I could get a list of updated mods? new/old texts (e.g. the XX to YY / XX-YY change)

compact isle
#

@chrome topaz it's the weekend now for me, but I'll resume looking into it on Monday

#

I've got PyPoE set up to pull the relevant translations but have to do the comparison

#

@desert needle an API to track individuals in races would definitely be a nice thing to have

chrome topaz
#

can't you like copy it from your git repo or something

compact isle
#

most likely has unreleased mods in there as well, so a comparison is better

chrome topaz
#

it's fine don't worry about that ๐Ÿ˜›

compact isle
#

I'm sure someone somewhere would be grumpy at me ๐Ÿ˜›

chrome topaz
#

oh uh hm actually I think Chris mentioned somewhere you use svn

compact isle
#

yeah, personally I use git-svn for my changes to make it easier to handle

summer shuttle
#

@chrome topaz did you develop the playonmac installer? Considering installing osx on a new build and avoiding windows altogether

chrome topaz
#

I don't maintain it anymore

compact isle
#

I'll have to keep an eye on it to make sure there aren't more changes as well

desert roost
#

Thanks!

cosmic saffron
#

some of those seem like mechanical changes as well

desert needle
#

would probably be cool if you could give a heads up on the underlying structure of the essence mods, it appears like they will be "40-50 to 60-80" but knowing for sure would help those who aren't giving up ๐Ÿ˜‰

dull arrow
#

Thanks Pete ^-^

compact isle
#

the essence mods are on currency items that don't change though, so not sure why it would be relevant

old beacon
#

i think he meant that the min and max ends are a bit unclear, and people are wondering if the rolls could be worded a bit more clearly like "adds 1-5 to 200-400 lightning damage"

compact isle
#

I don't see where the confusion comes from

#

ones with brackets can roll between those brackets

#

ones without are fixed

old beacon
#

Deals %1%-%2% Physical Damage Deals %1% to %2% Physical Damage
is just "roll range of minimum added" and "roll range of maximum added" is what they wanted to know i guess, i can't seem to word it right

compact isle
#

those are item mods though, not essence mods

#

essence mod descriptions aren't mods themselves

mortal bone
#

A description of a mod shouldn't vary in language from what the mod gives

compact isle
#

in this case they have to, as they show a range in which the mods can roll

#

the point is, there won't be any surprises in the mod descriptions and if there are any rollable ranges they'll be specified with brackets

timid hemlock
#

your code most likely just changed the ordering of the allocated nodes

#

the ordering makes no difference, so you're all good

pseudo ocean
#

that makes sense

#

thank you

compact isle
#

@pseudo ocean I have no idea if it's new or not, I just know it was in the 2.3.4 game files ๐Ÿ˜„

waxen ridge
#

Is there an API for ingame uniques beyond doing some weird look up to the wiki to try to get information on them? Looking for public JSON/API if there is one.

compact isle
#

no API, but you can use something like PyPoE to rip them from the game files IIRC

waxen ridge
#

Thanks, not quite what I was expecting but could be a solution, Write some code to rip and periodically update a DB on a remote store or something like that I guess.

mortal bone
#

@pseudo ocean are you sorting the nodes before generating the URL? I think the official planner just has them stacked in an array and that is how they are encoded

delicate ore
#

who maintains this channel's bots? discord supports CSS you know

#

we could have a bot that posts uniques or something

old beacon
#

would be cool to have it summon it like the mtg subreddit like
how about you use [[Lightning Coil]]

delicate ore
#

poe subreddit has that notation for displaying uniques already too

desert roost
#

Ask @daring notch about bots.

summer shuttle
#

Anyone here know much about PlayonMac vs Wine? (don't want to install Win in any form)

waxen ridge
#

wow @delicate ore how'd you guess what I was building. Actually got one in progress to do exactly that. That's why I was asking about official item API's

delicate ore
#

cool

compact isle
#

that does sound super cool

waxen ridge
#

Alright then given it's interest and Novynn says he likes the sound of it I'll try to get a working prototype finished this weekend

waxen ridge
desert roost
#

That looks excellent.

#

Would need limitations if you're looking to have it be an addition to this Discord of course.

waxen ridge
#

I'd like to get it added at some point, what sort of limitations would you be thinking?

desert roost
#

A maximum call limit for example

#

Can't have users linking a wall of uniques

#

Just opens up the possibility of spam

waxen ridge
#

Absolutely.

desert roost
#

Should also put in an anti-spam timer on it so people don't just link things repeatedly. Not sure if you're able to work with permissions, but I'd trust that Exiles, chat mods, sub mods, and GGG devs can bypass that limit.

#

But, before any of that, @daring notch should look over the bot.

waxen ridge
#

I would have to have a gander over the API to see if permissions and roles could be rolled into it.

desert roost
#

Hopefully that'll provide you all the info you need.

waxen ridge
#

Thanks I'll have a look through it

daring notch
#

Hey, I'm here

#

Sorry, missed the @

#

@waxen ridge PM me for sorting the bot for the Discord, looks fantastic by the way!

desert roost
#

Sweet

compact isle
#

woah I'm impressed

mortal bone
#

We have the css laying around, so if you want to do that instead of code blocks we can figure something out:)

jovial bear
#

If you want to share the project I'm willing to help

#

Maybe we could try something with the copy/paste of items ? (not only uniques)

jovial bear
#

Hey @mortal bone What do you mean by the css laying around ?

mortal bone
#

We have the css for the subreddit

#

Which displays uniques in a somewhat nice fashion

jovial bear
#

Yeah but you can't do that for discord can you ?

#

you only have the markdown no ?

tacit steeple
#

uhhh

mortal bone
#

Individually I believe you can

tacit steeple
#

quick question

#

where do i ask what happened if my game crashes after dying

#

xd

mortal bone
#

Not really sure what you mean by what happened after the game crashes. There isn't a way to know except login and see if you died

tacit steeple
#

i mean i died and then it crashed afterwards

#

weird

mortal bone
#

You don't really know what happened

tacit steeple
#

rip

jovial bear
#

anyway, I was thinking something like a bot that will act like this :

#

when you post a copy pasted item, it detects it, delete the message and copy paste it with cood formating

#

but if we can't really tweak the formating, it's a bit limited

mortal bone
#

Items are pretty much the worse things ever to parse

#

Off the clipboard that is

jovial bear
#

I can see why

#

I've looked a bit but it seems discord is too limited to bother making something out of it

#

I'll wait for them to improve markdown compatibility like adding colors and all before starting to code

mortal bone
#

Markdown doesn't support colors

#

GitHub has what is called GitHub Flavoured Markdown which supports all sorts of stuff

jovial bear
#

oh

#

well hopefully discord team will come up with some formating one day

loud umbra
#

Only workaround currently is to generate an image and link to the wiki

jovial bear
#

I thought about that but I think it's a bit too much to do so just for formating =/

desert roost
#

@tacit steeple Check your client.txt log file.

tacit steeple
#

@desert roost entering map sounds like a normal thing, but nothing comes after that. all other logs stop at the same time as well. but non says anything. guess i got unlucky or something

desert roost
#

Did you die before or after the map loaded in?

tacit steeple
#

before

#

i think

desert roost
#

Game crashed mid loading screen?

tacit steeple
#

right when it started

#

the loading screen

desert roost
#

Sounds like you might want to do a pack check. Thinking a corrupt asset crashed the game.

tacit steeple
#

however i do that sure

#

o i get it

#

thx shae

waxen ridge
#

Morning folks. I chose to not go the image generating route because my code written in node I couldn't be bothered dealing with phantomjs to create screenshots.

desert roost
#

No worries.

waxen ridge
#

Also thinking about it, having some CSS + a way of putting up HTML in discord means I would no longer need to parse out the data from the HTML from the wiki, if it were possible but I found no docs about stuff on discord other than markdown

jovial bear
#

No it's not possible unfortunately @waxen ridge

#

I hope the Discord team will give more formating options or the possibility to include htlm/css snippets maybe

pseudo ocean
#

yes

waxen ridge
#

Given the app is built in React and React has built in safeties it should be fine. The challenge would be storing the data safely in the DB more than anything else probably.

waxen ridge
#

no wait i just remembered to render HTML as HTML in react you need to use the dangerouslysetinnerhtml prop lol

jovial bear
#

lol

#

I don't really know react

waxen ridge
#

it's been my life for the past year or so ๐Ÿ˜›

jovial bear
#

I'm more into angular at the moment (= work)

mortal bone
#

@compact isle are you a front end or back end web dev?

compact isle
#

all the ends

mortal bone
#

Ah, nice. Self taught?

compact isle
#

yeah, I did take a course at uni but it wasn't very good

mortal bone
#

I am pretty much in the same boat lol

compact isle
#

self taught is fun anyway ๐Ÿ˜„

mortal bone
#

Yeah, a bit annoying though since I am pretty shit at UI/UX

compact isle
#

I'd like to get better at it that's for sure

#

backend is better though since you don't have to care ๐Ÿ˜„

mortal bone
#

pretty much. You can make things 'just work' then clean them up

#

UI you have to spend 100 years messing with css

#

and color palettes

compact isle
#

thankfully at work I have Erik for color stuff ๐Ÿ˜„

#

and chrome's inspection tools help a lot with CSS prototyping

mortal bone
#

Yep, that is pretty much what I end up doing. Bootstrap is also a god send

jolly ore
#

Chrome dev tools are the best

lofty aurora
#

How kosher is OCR in regards to making POE tools?

#

I know it's undetectable by definition, but is it frowned on by GGG?

loud umbra
#

OCR for what purpose? You can get the chat from the log file, and you can copy item info to clipboard via ctrl+c

lofty aurora
#

Dropped items. I want to make a logger for drops with zone and level, with droprates and all.

#

I opened a ticket, and I'm waiting for decisionmakers(tm) to get back to me,.

loud umbra
#

Yeah I've not heard of someone doing that before so no clue.

lofty aurora
#

I want to put numbers on droprates, in the light of IIQ and IIR on maps/gear, it could be fun. SInce you can grab map IIR/IIQ from the screen and character IIQ from the API (I think?)

#

You could do really high-precision shit with rampage on gear, and get a rough kills per drop estimate.

loud umbra
#

You could calculate item find based on gear for most builds if their character data is set to public I suppose. It won't be accurate for criteria-based cases such as with Gifts from Above or Kingmaker or Divination Distillate. Though distillate might have a buff icon, so might be possible to include that if they allow ocr. But those would be rare cases.

lofty aurora
#

Yeah, but that amount of precision I doubt is going to be needed

loud umbra
#

Or for people who do item swaps for item find. But again, those are edge cases

lofty aurora
#

1100 -> 900 kills per drop is not that big of a sway for something that is unlikely to be consistent

#

What I'm also interested in is maps, map drop chance, and map drop areas.

loud umbra
#

Ahhh.

desert roost
#

OCR should be legal Az.

lofty aurora
#

I think it would be fun to be able to put numbers onto drop chances, especially given that you can group things. If you collect enough data, you can calculate roughly when (IIR / IIQ) you get one equal or higher return per map, and so on.

#

@desert roost I mean, it wouldnt really matter, OCR is not detectable.

#

I guess you could put watches on the windows API level

#

and check accesses.

desert roost
#

Yeah. In the spirit of the law, no, OCR shouldn't be used to glean advantages.

#

Michael@GGG: "Even if your tool is not reading memory we still can't make make [sic] allowance for it as reading from the client display by any means effectively achieves the same unfair advantage."

lofty aurora
#

I mean I'm not looking for an edge, just for nunbers and statistics.

#

I guess that constitutes an advantage?

#

You could also just count the maps you get, and so on.

desert roost
#

in a game that's all about numbers and statistics? ;)

#

ยฏ_(ใƒ„)_/ยฏ

lofty aurora
#

I mean if you want to be really aids about it, this is all data we already had access to.

#

just by counting what drops

desert roost
#

Yes, but that took effort.

#

Automating it is what makes the difference.

lofty aurora
#

I suppose. That goes for things like POEPlanner too, though. Or poe.market.

dire trail
#

Is there any rest api / c# lib for a vorici calculator, or am i better off just writing it myself? (Making a discord bot for another group currently that, for example, uses some of the existing 3rd party tools to show some data for the users.)

lofty aurora
#

woh someone actually using haxe

dire trail
#

Yeah currently I'm looking at that code tbh

lofty aurora
#

I mean just reimplement it. Doesn't look that big.

dire trail
#

Yupp, quite small codebase, especially the part I'd need. Well, thanks!

lofty aurora
#

300 lines, not terrible for reimplementation

#

not ideal, but hey.

#

heh

dire trail
#

Sure, was just wondering if there's an existing lib or rest api

#

lol

lofty aurora
#

@dire trail you're a beautiful beautiful frameowkr that wishes it were erlang so badly.

dire trail
#

lewd

#

They totally stole my name

lofty aurora
#

I'm sure.

tacit steeple
#

PUUSH USER D:

lofty aurora
#

?

#

is that share-x elitism

tacit steeple
#

everybody should know puush sucks

#

i say that as a puush user

lofty aurora
#

My arguments for using puush: It's not gyazo

tacit steeple
#

potato servers are fun

#

i mean yea

#

and its not lightshot

lofty aurora
#

there you go.

tacit steeple
#

i mean every time i wait for like 30s to get a link

#

sometimes it doesnt even give a link and just fails

#

xd

lofty aurora
#

usually works instantly for me

#

v0v

subtle lion
desert roost
#

What issue are you getting?

compact isle
#

@subtle lion you might be missing a cert

subtle lion
#

fixed now

compact isle
#

awesome ๐Ÿ˜„

waxen ridge
#

Looking for ideas for spam protection on the unique item chat bot.

#

Do I set a single message limit? i.e no more than 2 uniques per line of text
Do I set a per user per second limit, ie no more than say 5 uniques per 30 seconds etc.

Realtime chat spam protection is hard lol

desert roost
#

Oh you're back

#

And your ideas sound reasonable.

waxen ridge
#

Cool I'll implement those with some friendly messaging and see how we go.

desert roost
#

Is that limitation per user or per bot use?

mortal bone
#

Limitations will come naturally, but I would start off with a time limit per user or per channel. If it 'spams' increase your limits :p

desert roost
#

Per channel can be problematic because chat can move quite fast, especially if a newbie asks about leveling gear.

#

I'd imagine people will delightfully link all the relevant uniques.

lofty aurora
#

@desert roost rip, GGG doesn't like OCR tools.

desert roost
#

Oh, guess you missed my message.

violet fox
desert roost
#

@violet fox Possibly the wrong channel?

violet fox
#

nope

desert roost
#

This looks like a build showcase.

lofty aurora
#

@desert roost I don't think I did, but precedence does not make a judgement, necessarily.

desert roost
#

True.

#

Never hurts to double check.

lofty aurora
#

Alright, time to make the OCR-less version of the logger with CTRL+C map data and manual entry <.<

#

ggg pls why

waxen ridge
#

Noooo! AWS why do I have to wait 24 hours ๐Ÿ˜ฆ I'll try to get the bot hosted when I come back from break but probably wont be before the start of essence sorry ๐Ÿ˜ฆ

desert roost
#

Hm? Essence League doesn't start for another 4 days, so you should have time. Unless your break is longer than that.

tacit steeple
#

rip

waxen ridge
#

I'm taking the Family to visit the snow till Friday NZDT and won't be back home near a computer till that night which is after Essence league starts

jolly ore
#

are any of the tools done in c++ or C#? I think I want to get back in programming and prob go with one of those

mortal bone
#

Acquisition is c++ and the offline planner is C#

jolly ore
#

Thanks @mortal bone

#

wouldn't happent to know what the top ide for c++ is? (haven't messed with it in about 10 years)

mortal bone
#

I think qt creator is pretty good for the project since it is using QT as the base for the code

#

I don't do much in c++

desert roost
#

I still just use dark skinned visual studio

jolly ore
#

vs = $$$ = not me

desert roost
#

Oh

jolly ore
#

I used to have it, but again, it's been about 10 years

compact isle
#

Qt Creator is great, apart from when everything goes wrong and it dies

#

ยฏ_(ใƒ„)_/ยฏ

desert roost
#

Lol. The few times VS has died on me, it has done...interesting things.

jolly ore
#

hmm vs community edition?

jolly ore
#

bah, do I want to go down the road of c++ and all the headaches? or should I just go with Python to get my head back in the game?

desert roost
#

I'd say start with Python first. Once you get into the swing of learning and utilizing a language, proceed to learning other languages.

pseudo ocean
#

python is one of the most intuitive languages out there

#

c++ is more powerful but also more stressful to use :/

jolly ore
#

yeah... I'm a glutton for punishment sometimes

jolly ore
compact isle
#

so many deploys

void wolf
#

deeploys

compact isle
#

at least now I can catch up on my current /r/pathofexile dank memes

woeful sphinx
#

@jolly ore vs community is basically the professional version and free for personal and open source stuff

jolly ore
#

So... decided to start with Python, only because new league starts in a few days. Any of the tools done in python?

vernal parcel
#

@jolly ore

jolly ore
#

@vernal parcel Ty

vernal parcel
#

yeh

pseudo ocean
#

has GGG posted the new filter stuff somewhere already?

desert roost
#

Not yet.

pseudo ocean
#

tomorrow, they said

#

people can't read item filter information with tears in their eyes over patch notes ๐Ÿ˜ƒ

#

have to wait for dry

pseudo ocean
#

haha yeah, the nerfs are brutal

steep hinge
compact isle
#

I can look into it when I'm free, sure

pseudo ocean
#

is it possible to have multiple ItemLevel conditions on one rule?

    ItemLevel >= 60
    ItemLevel <= 74
#

or should I have 2 rules ItemLevel >= 60 and ItemLevel >= 74?

jovial bear
#

you could do that :

#
Show
    ItemLevel >= 75
#Recipe Chaos Orb
Show
    ItemLevel >= 60```
#

(that's what I use in my filter)

pseudo ocean
#

Yeah, I am currently using that too

pseudo ocean
#

@timid hemlock you there?

jolly ore
#

codecademy is really nice. I wish they had something like this when I was originally learning c++

jade kayak
#

code academy advocates oop with javascript

#

-.-

mortal bone
#

There is a library for C# to JavaScript which makes js oop super easy

compact isle
#

I learned that there was a service to convert PHP to C# yesterday

uneven meteor
#

how does that even work

compact isle
#

it's still under development I think

uneven meteor
#

wait

#

is it a transpiler?

#

or an alternate runtime?

compact isle
#

transpiler

#

it builds a dll

#

out of that

uneven meteor
#

that seems really pointelss

compact isle
#

just another push to move people away from PHP I guess

uneven meteor
#

but it doesn't

#

output php as C# right?

#

that would be way more interesting

compact isle
#

it would have to in order to compile it

uneven meteor
#

not really?

#

cant it just output .net IL?

steep hinge
#

might be ignorant but why isn't there just some API made for item filters? Saves all this manual labour every patch compiling whats different

#

just deprecate changes and then have all avaliable.

pseudo ocean
#

Will that be sufficient to highlight all essence types?

Hide
    Class "Currency"
    BaseType "Essence"
    SetTextColor 170 158 130 165
    SetFontSize 28
wide rock
#

@steep hinge I'm not sure what you mean

desert roost
#

Item filters allow you to customize how your loot drops look. Having it done through an API may limit visual design, unless you have a program that reads all the items, and then allows you to input values for item types and specific items and generates a filter for you.

wide rock
#

isn't that what filtration is?

jovial bear
#

@pseudo ocean I think the correct syntaxe should be

Show
    Class "Currency"
    BaseType Essence
    SetTextColor 170 158 130 165
    SetFontSize 28
#

(and you'll probably want a bigger font size :3 )

desert roost
#

I was thinking

Show
    Class Currency
    BaseType Essence
    SetBackgroundColor 190 178 135
    SetTextColor 0 0 0
    SetBorderColor 0 0 0
    PlayAlertSound 1 200
    SetFontSize 40
#

woops

jovial bear
#

tripple ` before and after

desert roost
#

Yeah

#

Used tilde instead

jovial bear
#

^^

#

and the double quotes will try to only match the full name of the base type no ?

desert roost
#

Actually yeah

#

But

#

hm.

#

Without quotations should be catch all essences

jovial bear
#

Yeah but you limit the class to currency so...

#

We'll see ^^'

desert roost
#

All of the Essences are of the currency class though.

jovial bear
#

Yeah (i was saying you won't see any other essence item if they exist)

desert roost
#

Going off their post though, no other Essence exists.

jovial bear
#

And the goal was to get all essences was it not?

#

Yeah I saw the rewording line about that item in the lab

desert roost
#

Such an edge case

#

But yeah. Both our solutions should work

#

If not, live and learn!

chrome topaz
#

@compact isle how are essences going to work wrt upgrades? does it start at "Essence of XXX" and when you upgrade it it becomes "YYY Essence of XXX" e.g. "Essence of Torment" => "Muttering Essence of Torment"?

#

@compact isle are there any that don't match the "Essence of XXX" template? like, "Remnant of Corruption", but are there more?

compact isle
#

I'll check in the morning!

chrome topaz
#

okay thanks

#

@compact isle also any chance for me to get new map names

#

and item bases

#

also should I make cartographer's sextant "~b/o 123 sex"

#

people are going to love that one

compact isle
#

the new map names and item bases are in today's news post

chrome topaz
#

ah cool

#

I was checking patch notes and they weren't here, thanks

#

so shaper's orb is a quest items which I guess means it can't be traded

#

and every map now has a "shaped" version which is 5 tiers higher

#

I guess I'll add them as separate map types

#

not sure what to do about currency though - it seems new orbs have different tiers?

#

Apprentice Cartographer's Sextant / Journeyman Cartographer's Sextant / Master Cartographer's Sextant

#

so for currency.poe.trade I'll just add all of them I suppose, but for poe.trade there will be no way to list items for sale using these orbs

#

unless maybe eventually people will only trade the highest tier and that's what it will use

desert needle
#

hopefully essences will have a new frametype

mortal bone
#

How can I explain to people the difference in version numbers

#

I have so many people fucking messaging me 'why isn't your planner 2.4.0'

desert needle
#

lol :/

jovial bear
#

x)

jovial bear
#

Make your version the 2.4.0 and with patch note 'changed the version number'

mortal bone
#

That chain is the worse >.>

tall merlin
#

It's somewhat understandable simply because of the fact that your version is so close to the current PoE version

#

It's just unfortunate =p

mortal bone
#

Right now it happens to be

tall merlin
#

Yeah

mortal bone
#

It never has been in the past lol and 'close' is only in minor version

#

Which could be very off

astral crater
#

Honestly, probably just dont have the patch number in the title and stuff. Not 100% necessary, and the people that its useful for will be able to get it

tall merlin
#

Yeah, the average user doesn't really care or know what version the app is, they're used to skimming the forum for the current PoE patch version for the "updated" "newest" skill build

#

So they just instantly go "Oh that was last patch version"

#

and don't think about it at all

mortal bone
#

it just seems crazy to me that people have sent 20+ messages about a damn number

jovial bear
#

People... especially in computer science related things

#

ยฏ_(ใƒ„)_/ยฏ

tall merlin
#

That's a lot of fucking messages for sure lmao

mortal bone
#

Yeah, but hey it is the only complaints lol

tall merlin
#

Thanks for doing the tool ๐Ÿ‘ The web one is pretty awful

jovial bear
#

Yeah thank you, yesterday I introduced a couple of friends to poe and linked them to your offline tree. It's really great

mortal bone
#

Thanks :p

astral crater
#

My one annoyance is that i probably shouldnt have it on my work pc. If it was less good i wouldnt mind so much.

tall merlin
#

"Please make your software shittier so I don't want it so much"

astral crater
#

exactly!

mortal bone
#

You could download am earlier version haha

astral crater
#

ah the problem is im not sure having personal programs like that is a good idea on my work pc. Although now that i think about it i would probably be fine

woeful sphinx
#

We should tie our version to the game one and only release bugfixes when there are game patches, that sure would be better.

mortal bone
#

Lol yes they would work

tacit steeple
#

hey why is your version number different from mine :^)

#

jk

#

@chrome topaz u gonna do like a slider for the currency to select tier or how u wanna do that. adding like 50 things would be crazy

chrome topaz
#

what?

#

I'm not going to add any essences to currency.poe.trade

#

maybe only "Remnant of Corruption"? if people start using it as a currency

tacit steeple
#

"not sure what to do about currency though - it seems new orbs have different tiers?
Apprentice Cartographer's Sextant / Journeyman Cartographer's Sextant / Master Cartographer's Sextant
so for currency.poe.trade I'll just add all of them I suppose, but for poe.trade there will be no way to list items for sale using these orbs" was reffering to this

chrome topaz
#

yes. it's not 50

compact isle
#

before I forget, Garena CIS Race Rewards will have a flag set on the items in JSON

#

"cisRaceReward": true

#

if anyone wants to check for that

compact isle
#

in regards to essences and upgrading, the prefix on the essence signifies the level

#

Whispering -> Muttering -> Weeping -> Wailing -> Screaming -> Shrieking -> Deafening

#

so the "louder" the higher level ๐Ÿ˜‰ @chrome topaz I hope that explains it

wide rock
#

@mortal bone move to a Chrome/FF-style version system where you constantly increment the major version, that way nobody will get confused

chrome topaz
#

I see, thanks

trail compass
#

Hey, i'm having issues with the new poeskilltree update, is anyone here able to help me out?

mortal bone
#

Sup

#

@wide rock yeah, but we have something in place. It would be confusing to change the major number from now on

trail compass
#

I updated to the latest version and it gives me a cannot access the file error for the PersistentData.xml file and directs me to a debug.txt file, should i send you what that says?

#

actually give me a second i might've not restarted my pc

#

yeah it still isn't working.

mortal bone
#

Restarting your PC?

#

If that didn't work then those are problems I can't help with.

trail compass
#

hmm

#

i guess ill just use an older version, thanks anyways

mortal bone
#

Unless you are starting more than one copy of the planner it shouldn't have problems accessing the file

#

And a restart should kill anything accessing it

trail compass
#

well i'm not sure what i did but using the zip file fixed it

#

appreciate the help

#

โค

desert roost
#

@waxen ridge Can't remember, did you say you'd be releasing the bot on Friday?

waxen ridge
#

It's nearly saturday for me but it's not quite there yet, still haven't got it hosted and got home from my holiday maybe 3 hours ago so chillaxing haha

#

I was hoping to have it done tonight but, tiny humans... Let's just say that ๐Ÿ˜ƒ

desert roost
#

Ah yes, tiny humans.

frigid fern
#

Can someone give me the magnet link for the torrent or the torrent? Would appreciate it the forums are down

random quarry
#

@warm ravenshine

elder hearth
#

magnet:?xt=urn:btih:BBEAD2631BC6FC101C8770BDBC48C52D6FBC6342

chrome topaz
#

i'm pretty sure it's actually aliens

jolly ore
#

lol

chrome topaz
#

that whole post is an amazing read

tacit steeple
#

reddit in 2016 LUUL

chrome topaz
#

more like discord in 2016 LUUUL

#

this meme is so dumb

pseudo ocean
#

i just want to say that i admire your decision to not listen to the "take down xyz and force GGG's hand" b.s.

chrome topaz
#

hm?

mortal bone
#

@sudden tiger when are you updating the official passive tree with the sweet new class images

compact isle
#

I just got the issue to work on it so sometime next week? ๐Ÿ˜„

cosmic saffron
#

ooh, should also make art enabled for the ascendant's path of x nodes, that should make more than 1 person play scion

compact isle
#

that's a cool idea ๐Ÿ˜„

desert roost
#

You guys deserve a couple hundred dozen extra large fancy pizzas.

mortal bone
#

Sweet, any idea how you'll actually embed them? I don't know if I can handle more options lol

waxen ridge
#

A stack of Hell pizza for the dev team is a great idea ๐Ÿ˜‰

compact isle
#

no idea yet, shouldn't be too difficult to render them first before nodes and paths though

#

a lot easier than ascendancy panels that needed interactions

#

pizza is always appreciated ๐Ÿ˜„

crystal hamlet
#

i just had a random idea that i kind of want to drop here

#

i would totally LOVE a language analogue to SASS/SCSS that compiles to GGGs filter syntax

#

and allows for semantically meaningful filters

#

like, allow nesting filter rules

#

allow variables to store colors etc

#

could be tricky to define though, since the order of things is so important in filters that semantically arranging them could break them

compact isle
#

does anyone happen to know who it is that does the guild monitoring tool?

pulsar moat
#

He doesn't use this discord but he's survfate on github.

compact isle
#

awesome cheers

compact isle
#

there are so many people that put their poe.trade control URL in as their session variable ๐Ÿ˜ฆ

chrome topaz
#

session variable where?

#

in acquisition I guess? then lol

compact isle
#

ya probably

chrome topaz
#

i think stash api was returning no changes for 5 minutes just about now

#

but it seems like it's fixed now

compact isle
#

we just did a restartless deploy

mortal bone
#

@crystal hamlet I had thought about it, but I haven't had a chance to formally define something. I guess just having variables would be much better

compact isle
#

2% of visitors on the website use IE, and of those ~4% use IE8 and below

#

the end is nigh for supporting IE! ๐Ÿ˜„

subtle lion
#

but ms edge supports new web technology better ๐Ÿ˜ฏ

compact isle
#

indeed, but we still have to support IE10/11 based on their respectable usage

mortal bone
#

Anything above IE8 is at least a capable browser...

compact isle
#

IE9 would like to disagree with that statement ๐Ÿ˜›

mortal bone
#

Well, it at least works, and you don't/shouldn't have to support anything under IE10 anyway.

compact isle
#

yep, that's the dream

mortal bone
#

Can you not drop it?

compact isle
#

well we're supposed to technically be supporting IE9 but the website doesn't render correctly under it due to the CSS selector limit

mortal bone
#

Microsoft dropped support for 8,9,10 in January

#

I find it funny that you can only have 4095 selectors

compact isle
#

it's a pain when your SCSS is as bad as ours ๐Ÿ˜ฆ

crystal hamlet
#

i'm actually doing the filter preprocessor now, as a uni project

#

so i actually have to follow through ๐Ÿ˜„

#

been reading up on compilers/lexical and syntax analysis and drafting a plan for features

compact isle
#

that sounds really cool cere, what language are you going to use for preprocessing just out of curiosity?

crystal hamlet
#

haven't quite decided yet, but there's a good chance it's going to be rust

#

the two main things i want to do are variables and mixins; nesting would be nice, but i'm having trouble coming up with a good syntax for it that doesn't rely on indentation

#

while still "fitting in" with the original filter language

compact isle
#

ooh, a rust one nice ๐Ÿ˜„

mortal bone
#

Indentation isn't the worst thing to rely on, but it would be a pain to enforce and throw warnings on.

crystal hamlet
#

yeah i'm not opposed to indentation based stuff per se, but i want it to be a superset of the vanilla filter syntax

#

which doesn't rely on indentation

#

so you can paste in any existing filter and it gets compiled fine, and then start changing things

mortal bone
#

Rust would be pretty sweet

compact isle
#

a lot better than using something like scintilla that's for sure

#

although that's probably my bias

mortal bone
#

You could you {} for nesting like most languages

crystal hamlet
#

my criteria for the language are pretty much, that it should compile into an executable, and it needs to able to be built for multiple platforms; bonus if you don't need a runtime

compact isle
#

oh wait not scintilla, derp I forgot the name

#

Emmitt I need to borrow some of your energy

#

doing passive tree stuff and JS is so lame ๐Ÿ˜ฆ

mortal bone
#

What's up?

#

Oh god

#

I'm sorry

#

Have you come up with how you will display the new images? I assume just adding it to opts?

compact isle
#

yeah I just added it to the asset export

crystal hamlet
#

curly braces would definitely work but it seems weird compared to the rest of the syntax

#

one possibility would be to have a label for sub-blocks preceded by something like a colon, with the number of colons indicating the level of nesting

compact isle
crystal hamlet
compact isle
#

you could use something like a shebang to denote starting and ending portions that are precompiled

mortal bone
#

Sweet, thanks. I might mess with them later. How are you determining locations?

#

The colon isn't too bad and quick.

compact isle
#

haven't figured that out yet, I'll have to talk with the UI guys

crystal hamlet
compact isle
#

very SASS inspired ๐Ÿ˜„

crystal hamlet
#

yes, very

mortal bone
#

Just going to say that lol looks pretty good

desert roost
#

Bit of a tangent, but the large Witch version looks beautiful.

mortal bone
#

@compact isle ah, OK. The placement shouldn't be too hard especially if they are just fake nodes

compact isle
#

just got back, apparently they're hardcoded in the client at the moment

#

I'll get them to add it to the PHP export so it'll be in the JSON

mortal bone
#

...dammit

#

Sweet

#

The placement looks very close to the ascendancy button placements

#

You might be able to use some modification to that

compact isle
#

eh, I'm happy with putting it off until I have the values

#

means less JS pain ๐Ÿ˜„

mortal bone
#

True

crystal hamlet
#

there seem to be some decent parser generators for rust so thats good

mortal bone
#

Parser generator isn't a terrible idea, but they generally don't give you good custom error messages

crystal hamlet
#

it's a good place to start anyways

#

they all generate rust code

#

you can always start by generating the whole parser and at some point decouple from it and refactor and extend the generated code

mortal bone
#

Ah, I see what you mean. Get the basic format generated then edit

crystal hamlet
#

actually some of them also make themselves a rust syntax extension

mortal bone
#

Oh, wow. That is pretty sweet.

compact isle
#

that's some Clang level craziness

mortal bone
#

What class is this for if I may ask?

crystal hamlet
#

it's an independent coursework

mortal bone
#

Oh nice

ebon oasis
#

hmm i did not realize the amount of data there is in the public stash api O_O

desert needle
#

make sure you enable compression in your client, it compresses at 4:1 or more since it's text

#

but still can easily be hundreds of gig a month

jovial bear
#

I'm sad that exiletra.de is no more... Is it a possibility in a maybe distant future to get this kind of research (like 'chest es 6l') @chrome topaz ?

ebon oasis
#

@desert needle i was pretty much just poking it to see what it gives and if i can do anything useful with it, but it looks like i wont be able to do anything useful

desert needle
#

it does require a fairly hefty investment

ebon oasis
#

yeah, i probably don't have the resources to handle it

#

and i probably also lack experience to handle data of this size effectively

#

i also have a lot more respect towards the poe.trade dev now :p

chrome topaz
#

@jovial bear you can write a userscript that does that

jovial bear
#

Thanks for the answer, I was thinking about sth like that ๐Ÿ˜ƒ I may take the time to do so ๐Ÿ˜ƒ

compact isle
#

@chrome topaz want to handle Russian tags on tabs? We can just make them English otherwise

chrome topaz
#

making them english sounds like a better idea to me

compact isle
#

okay, I'll pass it along

brisk halo
#

anyone here who has experience with the public stash tab api?

ebon oasis
#

does looking at it yesterday and getting scared by the amount of data it has count? :D

brisk halo
#

probably not :/

ebon oasis
#

well i suspect xyz might now a little about the api

desert needle
#

yes

#

any question in particular steve?

brisk halo
#

if I wanted to index all the currency offers in essence league

#

how would I go about doing that

#

is it correct that I have to GET /public-stash-tabs and then get the next ID untill the stash array is empty?

desert needle
#

Yes, that is correct.

#

You would need to run the entire API stream until current, there is no way to filter by league/etc.

#

Then to maintain activity, you'd need to keep parsing it.

#

And be aware that some currency data is submitted directly to poe.trade IIRC, not done via the stash api

brisk halo
#

is that literally every incremental update since the beginning of public stash tabs, or does it prune irrelevant data?
do you happen to know how much data it would be for the initial index?

desert needle
#

If you start from zero, it's just a stream of all public stash tabs at the moment you start

#

An initial pull of the stream depends on what all is going on right now, but I would expect it to take a couple hours and be significant in size, probably 20+GB compressed

#

(enabling gzip compression in your client will significantly improve performance)

#

It's been awhile since I did an initial pull and I never actually logged the size, but it's thousands of updates.

brisk halo
#

what kind of client should I be using?

desert needle
#

You can use anything, whatever you're comfortable with. Curl or a perl/python/node.js/etc. client.

#

You'd also need to write a parser for the JSON data but if you only care about currency that is pretty easy to parse out.

brisk halo
#

parser shouldn't be a problem once I have the data

#

tyvm for the help

desert needle
#

To actually grab the stream data is pretty easy, basically just a simple program to get each url in a loop while processing the JSON enough to pull the next_change_id, then store them as a text file or something for actual analysis.

brisk halo
#

I'm currently running a node script that requests the data

#

I mainly wanted to know if I have to prepare for 20 or 2000 GB of data

#

and if I'm doing it right

desert needle
#

definitely closer to the former

#

I was pulling around 200GB/mo compressed (~1TB/mo uncompressed) processing the entire stream

#

though Atlas of Worlds may be even more popular

#

if you go so far as to pre-process and only save the currency data that would probably cut it down to 1% of that size on disk

#

to do that you just iterate the array of stashes, then iterate the array of items in each stash and check for the frametype for each item and just save that object

#

but you still need to transfer all the data

brisk halo
#

since the API throws it all at me I'm just gonna save it all

desert needle
#

word

crystal hamlet
#

yay

#

i made a functioning parser for filters

#

first step done

#

it's not 100% yet, but it parses a basic filter

#

i mostly need to rework the lexer, it doesn't discard comments yet and still passes through empty lines if they contain whitespace, which is a bit messy

chrome topaz
#

@brisk halo I just checked and it's 17GB. you don't want to keep the whole history though

brisk halo
#

after the initial index I'll put it into a database and apply the incremental updates

chrome topaz
#

another good idea is to keep all tabs' original json somewhere

#

so if you change your parser logic you can rerun the indexer on the local set of json without downloading it again

brisk halo
#

that's a good idea, thanks

pseudo ocean
#

is there any way to check via an API or so if a user is online?

pseudo ocean
#

@pseudo ocean apparently, there is an API for that but it's currently more private than public

#

not sure what the details are in asking for permission. someone else could respond

desert needle
#

there's no official way to ask about that, you basically have to e-mail some developers and hope they hook you up

#

the one I saw is pretty terrible though, and it only worked (IIRC) for accounts with public stash tabs, i.e. it was intended for trading, not for general statistics

#

they are very guarded with that information

pseudo ocean
#

ok so a hacky weird solution it will be, thanks

#

tho it is weird that they give us all the infos about the items players have and show players in the ladder but not give us an on/off status

old beacon
#

people would probably use the concurrent total player numbers as some kind of crappy arguement

crystal hamlet
#

it's not like you could determine a number that is any more specific than the steamcharts one from a service like that

#

where you can only check whether people with specific known names are online

old beacon
#

precisly why it would be a crappy arguement

#

its not indicative of success at all

crystal hamlet
#

you couldn't do a lot more with it than you can already with the ladder status

woeful sphinx
#

It's probably more of a privacy thing. If everyone would have access to the online status of everyone, you could log and profile online times of anyone.

#

With keeping it private they can make sure that it is only used for trading purposes.

chrome topaz
#

there's 2 online APIs, one you give list of player names and it responds saying who is online. another gives you list of online players that have public stash tabs. both are kind of bad

chrome topaz
#

@compact isle russian players are complaining that they cannot trade because whispers they get have english names of items but their client displays russian names

#

@compact isle right now I've added a bandaid in form of specifying left/top positions of items in the whisper message. however, this only works for premium stash tabs, and also quite ugly

desert needle
#

wow, that's confusing.

chrome topaz
#

@compact isle also the bandaid is not very good apparently. people on reddit are complaining it's too hard to understand that LEFT: 1 TOP: 3 means 1 boxes from the left side, 3 boxes from the top side. maybe they are just dumb as hell though.

desert roost
#

Rows and Columns may be easier to understand.

mortal bone
#

@chrome topaz position: (1, 3) might be easier to understand. I would assume it is the wording that is the issue

chrome topaz
#

no. I'm not changing it.

pulsar moat
#

LEFT: 1 , TOP: 3 could be interpreted as directions relative to the center point, e.g, one in the -x direction from the center and 3 in the +y direction from the center. That was my initial guess until I read your explanation.

#

Your choice ofc, thanks for doing it.

chrome topaz
#

people will get used to it in 3 days

uneven meteor
#

just for reference

#

it is origin top left?

#

right?

pseudo ocean
#

yes.

compact isle
#

@chrome topaz there are some unfortunate limitations surrounding translations, so there's no easy solution :L

chrome topaz
#

then can you add tab name and item x/y to forums json? @compact isle

compact isle
#

hmm maybe, I'll take a look

chrome topaz
#

4 pages in fact

compact isle
#

hm, their search index is probably broken

#

yep

#

I'm always sad when I look at the linked item code

#

it's such a mess ๐Ÿ˜„

#

doesn't look like I can get that information from linked items sorry

chrome topaz
#

ok

compact isle
#

as for searching, looks like it was never made to handle the multiple sites thing so it doesn't work on the Portuguese one either

chrome topaz
#

funny

distant heath
#

Can't you extract translated text from the game, and use it to translate the English names to Russian?

mortal bone
#

It could be that items and such are translated on the fly and stored in English

distant heath
#

I still think you'd be able to map English words to its Russian equivalent in most cases. Maybe if there are two identical English words used in different context which have different Russian translations this might be a problem

mortal bone
#

Yeah, I am not really too sure. It could be a 1 to 1 mapping that gets converted on the fly

distant heath
#

Could also use Google Translate xddddd

#

I should start doing that, send my wtb messages in google Translate russian

pulsar moat
#

I actually set my custom /afk messages in both english and russian so it's clear.

summer shuttle
#

@woeful sphinx poestats already abuses privacy by keeping track of time-played for people on the ladder. I've been asking him to remove my information for three years without success. GGG said they'd provide a privacy option so I can keep myself off the ladder, but it hasn't been implemented yet. Sucks because it's the only reason I'm hesitant to invite friends to play.

distant heath
#

Isn't that info available publicly anyway?

summer shuttle
#

The ladder is public, but poestatistics is the only site to store and disseminate the information. Just wanted to indicate that privacy isn't a leading GGG concern, as far as online statuses go.

crystal hamlet
#

anyone here who works on a loot filter?

#

been continuing work on my dev tool/preprocessor, would love some feedback on planned features and syntax