#tooldev-general
1 messages ยท Page 59 of 1
That is 3.8 TB of data per month.
Assume we have 1,000 people using a sniper. That is 3.8 PB of data transmitter per month.
Yeah nothing
Check what that would cost with SQS
u pay $190k a month for an engineer in SF
๐
900 * 0.5 = 450 USD
pretty much aligns with what I thought
that's just gzipped though
900 is what, and 0.5 is what
1 m free
that's just the requests
that's for polling though
I said streaming data
Which is a different method of sending data
We can continue arguing SQS price if you want but it has calculators
It really is
You'd be better off building your own infra
data egress will cost you no matter what
Except when it comes to Postgres
btw I fixed the poe/trade delay on livesearch ๐ I leave for a week and everything gets slow
@compact isle i know that feel
hah that'd be nice
rm -rf ~
$210,000 data egress cost
I like how you're pulling numbers out of thin air
30 gb of gzipped data for 1,000 consumers is not 210,000 a month
slice that in 4, and it's still a chunk of change
I pay < 1,000 for petabytes
there are different kind of petabytes
you've got to be doing some wacky tabacky
but why poll that's dumb for this kind of information
compatibility
yeah but why are you guys so stuck to SQS
xyz said he had 12.5k websocket connections at the start of Abyss
lol
like stop
first u say "should use SQS"
I said
then "why use SQS"
You could use it
Bye bye real-time that was the plan all along
Take down poe.trade
is being semi-sarcastic </s>
I don't think it will do anything to poe.trade lol
It'll maybe add another 10% to it
meh just spawn headless browsers
The thiing is any more connections than that ban
I mean, xyz can just limit your connections by IP
vpns make that easy to get around
if you start using proxies to get around that then you need to start reflecting on your life
hell even aws does with dynamic ips
You also have a problem searching for over 200 items
You can't realistically buy that many items
True
to be honest is building out a server farm that scrapes a site and avoids banning by limiting access time and doing server mesh across multiple cloud platforms and vpns really at that point a script kiddie
yeah lol
I don't know that's kind of a complicated architecture to be fair to the script kiddie
a) you don't need a server farm in the sense of consensus
you could kind of get some of it going with kubernetes and headless chrome
b) you can just use luminati or something
The thing is, if you go through poe.trade or similar you are now at the mercy of the indexer that is public
You don't have a time advantage
Which is the point of this change
a beefy server can do it all, just roundrobin to a bunch of proxies u buy
well yeah the person who uses a single server is a script kiddie
but the person who builds a resilient server mesh isn't
was my point
you don't need a server mesh
thats the point
and today, there are templates for kubernetes, mesosphere / dcos, etc
click and launch
clicks the scrape poe.trade websockets and gain mad exalts button
someone could easily make one and distribute, right?
thanks 2017
yeah but then you'd lose out on all your mad exalts
honestly I've been playing with the idea
licoffe distributed his sniper
of scraping trade chat
same philosophy
and blasting people who try and scam people for currency
make a site that keeps a record of all scammers
Shouldn't be that hard
distributed Rx
Need more efficient filtering
Xyz sends before indexing
indeed, some consequenses/tradeoffs to that
every time i look at trade chat makes me want to do it
it's not scamming if you bid for something
The indexer and the live searcher deal with the data at the same time
I agree with you, until you get into people who don't know better
it's not a scam, you're just stupid you're paying $400k-something extra for a car you can get somewhere else
I'll percolate you
now i want coffee
so if I start selling something for less to disturb the market
everyone else would be a scammer, who didn't adjust their pricing
price gouging?
that's the opposite
whatever the opposite is
@polar island you could use GCP pub/sub
you're fucked
you'd have to make a queue system on your side though
which isn't too bad
why not just take the avg price from all -> put those on top
you could be considered "price fixing" or "favoring"
I'd rather just do an auction house
I'm not really against currency auction house with buy -> sell orders
it honestly seems like a fun "side trading site"
rather than the traditional indexers
please add ah with apis
no apis ๐
Lol we talked about this a little
without the limitations
Yeah, still need humans right now
imma hft the bamboozle out of ya'll
No api to trade
you can place the items into a vendor with a price, and the player goes to the vendor in ur hideout
boom
๐ฆ
price locked for 30mins~
or.. you have 1 minute to change the price, but you can't take it out
once that minute has passed, the price is fixed for 7 days
(in case of typos)
sounds like people can start playing, rather than trading
it's a bit difficult now though when you let the genie out of the bottle with the trade api
I only got gigabits in north korea, hmu if interested
definitely interested
you do know he is a consultant for GGG right?
he just mentioned that
His keynotes are the best
@simple ravine Hรคlsningar from Tรคby.
Bahnhof? Thats german
The company was founded in Sweden in 1994, bud
^^ its a german word its the station where trains arrive ๐
yeah i am actually austrian so my native language is german ๐
fun fact - They have one of the coolest datacenters I've seen
Where's the stats?
the stats aren't known
Charan's Sword
that guy...
@velvet fog
might be able to work with that
wait it's one handed? wtf
ahh gotcha.
the reddit post talks about it counting as both 1h and 2h
do we know whether it's just 1h or not?
it's 1h
ya looks like it
how do you get it besides div card?
seems like it drops only in twilight strand?
twlight strand lol
http://poedb.tw/us/item.php?cn=One+Hand+Sword listed as one hand sword
so it's not a crazy puzzle like TGU was?
that recipe is disabled
right
so I guess it's just a normal drop, that only drops in the twilight strand
great....
from hillock from the looks of it
it is the sword he pulls from his chest
what starting character can kill hillock the fastest?
hillock is lvl 2, so you can get a portal scroll
you can port people in with rarity gear to cull him
hmm helps a little
but if you have to kill hillock to get a portal scroll, doesn't that mean you can't cull himi?
oh, do you just log out?
haven't found a portal scroll yet
@fickle yew The new div card (Rebirth) shows up as the prophecy with the same name
I am assuming this might break some other things with them as well
@chrome topaz i think poe.trade has the same issue
i saw a card on the river but poe.trade doesn't have a single one listed for trade
i farmed hillock for 30min with 479 inc rarity
didn't get a single unique :/
Sometimes I feel like there is a "sweet spot" for rarity
the sweet spot is over 9000
@mortal bone thanks I'll take a look
is there a way to get current character's exp value?
apart from the obvious mouse hover and type it out of course
There's no chat command or anything, no
If you are on the ladder you can get the current exp through the ladder api
not sure if you can get character information any other way
well, https://www.pathofexile.com/character-window/get-characters?accountName=<AccountName> will give you a list
it doesnt seem to include xp though
@compact isle Do you know of a way to get current exp of a character programmatically?
not in an exposed way no
Okay, thanks
yeah ladder api is the only thing
@wind garden i added it but might still be broken
@chrome topaz https://www.reddit.com/r/pathofexile/comments/7l7qru/i_got_onigoroshi_but_i_dont_know_how_to_build_it/drk6zk7/
too bad you are being sketchy lol
was that ever a question
That's the problem with a whitelist, people start to question who deserves to be on the list or not.
Im not sure what teh stance is on moding and using tools with PoE but i know we are allowed to use item filters. Is there anything we can use that will allow better visability of Abyss veins, i often hear then crask open after the first one, but there are so many enemies on screen i can never see it till its too late.
Nope
Look at your mini map, the icon for the abyss moves to a new location
ty
rip
weird to post a 6L bow for 3ex and not get a single whisper for 60 seconds
seems snipers haven't really switched to poe.trade yet
most people who snipe just steal someone's code and probably might not be aware?
guessing you've already refactored ur sniper to use something like poeapp or poetrade?
hah
i've been distracted playing around with large amounts of historical stock data
time to start charging people per livesearch-minute
the render takes under 1ms?
6-10ms ~ to memory (all visable tiles on the screen). Then each tile caches from memory. And what's rendered is the caches
So it's 9 images
i see
the "spikes" are barely noticeable too, so that's nice. But I also learned that Resource Limits are a thing for mobiles... So I have to rewrite how it renders to memory. It currently only works for a zoom that's less than 0.1 lol
@chrome topaz rendering shouldn't ever take too long
Everything about the tree is static
@mortal bone Pretty much this, the only real difficult was to also make it render at good framerate on mobile
Mobile or desktop?
mobile sucks imo
would be easier to just do native
What do you mean? c:
make an ios app if you wanted to go mobile
Nha, that ruins the whole point of this project :)
The goal is to make a PoE planner that works good on both mobile and desktop.
Risk is that you're going to please nobody instead of everybody ๐
Mhe, there's no risk in that. It is what it is, doing it for fun. The goal is not to make a new groundbreaking application for PoE, not sure if it's ever going to be released
Always fun to learn new tech
Those are great ambitions! Go for it
you should definitely release it though if it is functional lol
^^ will probably take a while tho haha
in the meanwhile, PoeSharp is coming along slowly but steadily
it shouldn't but it do
wat?
He is talking about rendering
I have never had a problem with C# and DrawingVisuals
HTML5 Canvas on the other hand...complete poo
UWP's rendering performance is decent
haven't messed with it too much
too bad people afraid of change and stick with Windows 7
I wasn't afraid of change and installed win 10 pro and then Microsoft installed candy crush, Plex, get office, Skype, some noname video player and a password manager that leaks all my passwords
leaked them where
it didn't install Plex, video player or password manager for me
granted it did install some game and a link to get office installed
and that annoyed me somewhat
but i wouldn't go back to windows 7
I upgraded from win 7 and only had skype for business get installed
never had a password manager get installed
it did install Plex last time i reinstalled
I'm rocking a gpu passthrough setup now so it's cool
for your passwords? lol
this guy is the most paranoid i've met in quite a while, i swear
for windows, what do you mean passwords?
you would be too if you were making millions off a site lol
Oh, ok
I was really confused
check out https://reddit.com/r/vfio it's pretty cool tech
thanks, I will
you can run linux and have windows in a vm and have it use the gpu and other hw directly
How is the card support?
what do you mean? you give the card to windows
you need a fairly modern gpu though, well it's all explained on that reddit
2018 the year of the linux desktop
if you want windows-like try gnome3 + https://extensions.gnome.org/extension/1160/dash-to-panel/
I haven't messed with anything but ubuntu and a long time ago at that
vfio is pretty far away from click-n-play
you gonna be using power of terminal and debugging
those seem to vary way too much
15 minutes of backlog is that what I am seeing?
depends what time period you're talking about
inbefore delaying the api is too stressful on GGG's servers to keep up....
that would be....ironic
maybe they just had server backups disabled and only now noticed
that'd be way worse you know
idk
but GGG has way too many issues that are a side effect of everything on their webside/api being tied directly to game servers
hey you gotta admit, at least their own trade system doesn't crash the game
i half expected it to cause problems
does it not use the same api?
@timid hemlock are you adding support for Oni-Goroshi?
Aye, it's already coming in the next update
k thx
gems don't have quests :/
hmm neither RePoE or PyPoE had a list of base item types
Is there anyway to extract real mod names in game from RePoE's mods.json file?
look at the translation file
@noble siren eg, take the first entry in mods.json: AbyssAccuracyIfNoEnemySlainRecentlyJewel1_ ... notice that it has stat id: "accuracy_rating_+%_if_enemy_not_killed_recently", cross reference this with stat_translations.json, and you will "{0}% increased Accuracy Rating if you haven't Killed Recently"
@mortal bone I'm running ubuntu 16.04 on my server, windows 10 on my game desktop and latest macOS on my laptop.
So happy that Windows will ship with an ssh client in the future.
install bash on windows, boom done
Also Ubuntu on Windows is really nice, espescially with ConEMU.
windows has a built in unix console now
Unix console? What are you referring to?
they tried an unixsubystem as early as vista
you have to have windows in dev mode though
Yeah, it is a unix subsystem
pretty sure it is a ubuntu shell
Yeah, it is the entire subsystem
have fun lol
will be much better than running cygwin
I use it mainly to ssh into stuff
it does until you want to start doing things with external editors
yeah I didn't want to run an x11 server
the amount of effort wasn't enough for the returns at that point
it's literally google->click->install
have working system already
this requires setting other stuff up
yeah just going to stick with what I have
im happy for you
?
that you have a working system already ๐
Eh, working system with cygwin is one click, with subsystem its a long process, not worth the returns
The insiders has some improvements but you could already do those things without the subsystem, so QoL has improved for it
If you go through the issues for WSL a lot of the comments are to use Cygwin based solutions or unsupported third-party programs that you basically can mitigate by just using cygwin. I think WSL is gr8 for running pure server tasks / commands but when you have to do anything with the windows system from WSL, just use cygwin
I am not too experienced with the WSL, but cygwin was a life saver duing school. It was nice not to have to dual boot
never went towards the macbook
I didn't have an iPhone, so it didn't make too much sense for me
I never got it for my phone or other things, but because my work just gave me one
It would have been nice though for my senior project. It was Ruby on Rails, which was a bitch to get running correctly on windows
It's really nice to work with most of the time, things just "work" without having to do much setup at all which is really nice especially when you just want to do your thing
Yeah for ruby it's install chruby (one line) and now you can use any version of ruby / ruby on rails
@simple ravine was the code in that screenshot from the library you're working on?
yes
nice
That's the API surface, so far.... alpha state, mind you though.
is there a comprehensive list of public api calls any where? https://www.pathofexile.com/developer/docs/api-resources has some, but i have seen others reference ones not on this list
the other ones are private and subject to drastic changes at any given moment
ahh. is there any way to gain acess to them?
a lot of them require you to be logged into your account
such as the personal tab api as well as the character/passives api
ahh
Mornin'
morning
Evening
its middle of night for me ๐ฆ
@simple ravine share that ggpk c# library already :-)
Will probably be early January ;9
there are libs in visual ggpk if you need somthing now in c#
More for messing around then something I need right now
visual ggpk is kind of clunky
for just messing around using the interactive console in python is fairly useful ๐
I haven't decided yet, but i'm not closing the door on AGPLv2 et al
Why v2 and not v3?
mit
@mortal bone Oh there's a v3, I wasn't aware. Then that is a candidate
Honestly, I am not sure the difference. I am just aware of v3 lol
@gritty olive I don't want to permit commercial/paywall applications, hence MIT might not be my best candidate
GPL can be used in MIT but not the other way around MIT can be used in GPL, but not the other way around
wait, I can't use libraries based on MIT in a GPL project?
hmm, would you want to expand briefly on why?
It seems to be compatible
Anyways, I want it to be allowed to be used in any non-paywalled applications without restrictions, as long as there's a notice somewhere
Yeah then something like GNU would prevent that
Say @fickle yew use it with his site, I wouldn't want to require him to open source his site though
but GPL-esque prevents that
Doesn't the apache license allow that?
https://choosealicense.com/licenses/ <- looking at that right now
Yep, that is where I go normally
but i recall seeing a more informative/interactive site for picking a license
there is a site (or was) that allowed you to pick the terms you wanted and they gave you a license that best fit
@mortal bone What about LGPL, wouldn't that be something?
nothing is really stoping them from using it for monetary gain tbh
Yeah, LGPL allows use in non-open source software
You can always modified the license though
It doesn't prevent your paywalls though
You could also dual license your software. Although, this is generally used to have users pay if they don't want to use the main license of the software. If someone doesn't want to use GPL, they can pay you to get rid of the license. You could make this fee a penny or what have you.
MySQL does this and a couple others as well
I'll just pick one and add a "Don't screw people over clause"
You could put it under CC and add the Non-Profit clause
The problem is Creative Commons is a license compatibility nightmare lol
non-commercial clause makes your software non-free
if you add a "don't screw people over" clause or any non-commercial clause, it won't be compatible with neither GPL nor MIT
here's a famous example https://en.wikipedia.org/wiki/Douglas_Crockford#"Good,_not_Evil"
Yeah, it is a pain in the ass
what people often get confused about is that in free software definition, the freedoms are user freedoms, not developer freedoms
so they say "how can GPL be a free license, there's so many restrictions - i have to publish source code!"
this page describes it better imo
git log --all -M -C --name-only --format='format:' "$@" | sort | grep -v '^$' | uniq -c | sort | awk 'BEGIN {print "count,file"} {print $1 "," $2}'
useful
problem is users don't really care about licensing
developers are the ones that have to deal with the licenses, and they don't always play well together.
people are so entitled
I usually just go for MIT. It's permissive and people can do whatever they want pretty much. I wouldn't really worry about other people making money from my poe code.
I'm trying to understand how the public stash API works. Does it just give you a new array of stashes with items in them on every request, from some available shard?
It gives you the difference, up to x items, from the last time you requested items. There are 5 shards hence the 5 numbers in the id string. Some of these numbers may not change much at all because that shard didn't have any differences
@timid hemlock is there a way to trigger "killed recently" in PoB?
add an effect that grants it and it should show up in the config
hey is there a good way to pull unique data from the wiki? i know how to get the mods, but im more interested in version history
hmm theres ~300 uniques with legacy variants, doesnt seem too bad i guess, thought it was way more
oh but the wiki doesnt tell the difference between actual legacy items and items where a mod has been completely replaced -_-
how come https://pathofexile.gamepedia.com/api.php?action=askargs&conditions=Has rarity::Unique&printouts=Has release version&format=json does not list release versions for any item?
they are inside each page with api
hm? i see release_version in the page source, but idk how to get it with api
I don't think legacy variants are stored in a way accessible via API. If you look at the source, the legacy tables seem to be manually created and not integrated with anything (e.g. https://pathofexile.gamepedia.com/index.php?title=Atziri's_Acuity&action=edit).
so just the top part with the values is generated?
i already have most of the legacy mod data, i just need to fix the version numbers because theyre a mess atm
yep. Though, it does look relatively easy to parse the information you need from the source. If the API can return source of pages, that might be an easy way.
yea i don't see how to do that, so I'll probably just parse html source
action=raw returns the wikitext (source) of a page. https://pathofexile.gamepedia.com/index.php?title=Atziri's_Acuity&action=raw
thanks!
I normally use things like 'Domain', 'Application', 'Services' in my namespaces in systems I build... but they feel wrong in libraries
(Domain specifically in this case)
Because, normally a library is implcitly solving a domain problem, right?
What does the stuff in an item name like name: '<<set:MS>><<set:M>><<set:S>>Rift Pace', mean?
It's 'poe markup code', you can safely strip that off
Aah, l18n, thanks.
Mhm
Each language will have their own identifier, but it should be the same within a language
Hi, quick question: trying to retrieve all connected maps to a given map, e.g. bog => [lair, primordial pool], whereas bog upgrades into lair (red), i have no clue where to find the connection to prim.pool (yellow) - any pointers?
Ah, got it it's in HigherTierMaps_BaseItemTypesKeys
hmm do they change stat IDs often? like, the existing ones
im tying a lot of logic to specific id's, but i just realised that they probably change them somehow, since surely they didnt name stats "do_not_use" from the start
not often as far as I am aware
those do_not_use are from when they changed mechanics
like leech
well ye it makes sense
but that means theres some constant ID that never changes, since the item DB has to use it
guess its not hard to manually fix the changes with every patch
I think stats are changed less than mods
but that is a guess without much facts backing it up, though
When they changed the ES stuff for an example
They didn't change the stats, they changed the mods, right
well those are the min/max values on the mods, and not the stat, though?
yes but the mod id is still the same
ah yes
their db might very well store values per modifier based on the index (first stat, second stat, etc) rather then using a reference to the stat
but we dont know
yeah, im terrible reverse engineering executables
but I suppose that would be an option if you really want to know
Yeah, it isn't too bad, but it is nice to get able to debug through when reverse engineering. I wouldn't really want to do that with a game I would care about getting banned in
eh you can just disconnect while debugging
I dont think so
get a second account
@timid hemlock Elder shields aren't displaying the elder mods
doing it on a Vaal Buckler
Fixed in the next update
Sometimes the forums give posts scrollbars, its really weird https://i.imgur.com/VOQ1uWB.png
finding pre 1.0 skill tree data is impossible
@chrome topaz do you happen to have any pre 1.0 skill tree data laying around? I know you have an old branch on github, but it seems to lack the data
im curious what u're up to, Emmitt
I am trying to compile all the major tre changes into a nice website
you could flip between them all to see the differences
oh, cool
I have everything from 1.0 foward, but the tree was much different in the 0.9 and 0.10 patches
this site has 0.9.2f, but it is all hand coded
this is the point in which the shadow was unknown, hence why he is refered to as SIX every where
scion being SEVEN
super high res of 0.10
interesting
@mortal bone don't think so
is acquisition the only way to sell bulk currency items ?
you can list them in a sale tab
just price one, and the shop will give you a 'stock'
ye
nice
so many small changes each patch >.>
2016 was more active than 2017
I always wonder why we need to use fraction on 1.4 1.3 etc when selling
when it looks 1.4 ingame
@mortal bone can you request data for the old trees from GGG?
I can just look through the archive, but it is a pain because every patch could have tree changes
Another question regarding the ggpk & maps - i can get the monster packs by using MonsterPacksKeys but this dat does not seem to link to specific mobs, just contain their ID and Tags. WorldAreas also does have Monsters_MonsterVarietiesKeys but this seems to be mostly empty. Is there a way to get maps default mobs?
Some .dat files are emptied on purpose by GGG, so it doesn't reveal the data to people like us ๐
Ah too bad, but somehow understandable ๐
well thats nice
request.setRateLimitByString('5:3:60')
request.setCacheExpiry(30)
request.start()
tabs.forEach(tab => request.push(() => tab))```
I'll add to the subscription function an interval
subscription interface works, so does caching, this is nice
what are u working on?
eh i'm not sure what to properly describe it as
Basically it makes requests and adheres to the rate limit with a built in cache system
so if you add 10000000000000000000000 tabs
it will never, ever, go above the limits
it also doesn't make requests immediately but is a subscription system
Round Robin Throttled Request Client with Caching and Event System
is what it is
hm. the evenly spaced doesn't work properly with the circular job structure
dataflow with backpressure
yes but it's circular
round robin doesn't necessarily have to be circular, but sure
sure, well I'm not sure the model exists currently so i'm trying to find things that fit the idea
Basically you have a list of requests, it takes a chunk, does them, caches them, gets next chunk, puts old chunk back into the list, checks current chunk for holes, fills, requests (when cache is expired), caches items, fires a listener
distributed load balancing
but for client-side requests
so let me get this straight
you have N nodes that does stash tab requests with different public IPs?
not really :/
I thought so too
You can have 80 reports, each use different tabs, when a report is created it needs the data from the tabs
how does it get that data, and how do the other 79 get their data as well
I'm moving from the previous model of, every report manages their own tab fetching to a centralized fetching mechanism
and they use it as a pool
that's pretty standard logic though...
So I will get your tabs for a league, shove them into the pool, the pool will continuously fetch and cache them for N minutes or seconds, and when a tab gets updated, so do your reports
Until you get into dynamic requests ๐
And manual refreshes
And more tabs than the rate limit window allows
Not to mention the secondary windows -_-
no what I mean is caching middleware is like... super standard ๐
yeah, we did the same in a project ~8 years ago ๐
also can't find anything open source that does this
I can find them all individually
but not as a single thing
we wrote our own request service
with caching rules based on endpoints etc
abstraction is key
hence why I wrote mine ๐
@polar island I'm trying to get currency-cop into the position of "lazy loading" rather than "wait-n-show"
So reports get gradually built
the retry-after would be nice
once I get there
Caching has a 30s timeout so it works nicely
evenly spaced works pretty well now too
(I forgot 9 in the list, so its not a bug)
You don't need a retry after. It is a 60s lock out
At 60s+ you can try again with success
we do actually supply a retry-after

I haven't tested for retry-after, but the point of it is to completely avoid hitting that, and ensuring that we aren't overloading the api and doing unneccessary calls
Someone has 240 tabs, let's not make it possible for them to do 240 every 240s since that would be absurd, eventually want to get into the point of having the refresh only kill the tabs of the report you're trying to refresh
Also want to move from having the current system of 240 for every report
@compact isle while you're online, any news for when the map tab will be on the site?
probably not for a while, it'll need to go out in a proper patch
y u no have cache mechanism server side with etags @compact isle
(that doesn't count towards api usage)
because our backend doesn't support it, which means our web side would have to re-fetch the data anyway which defeats the purpose of it not counting towards the api limit
i'm sorry to hear that ๐
it was never designed with the website as the priority, it's a game server backend after all
i guess it is what it is
well, it can't be what it isn't
if it's immutable*
Is there a good websocket client for C#?
yes, built in
ye
System.Net.WebSockets lol
if you're supplying your own server, take a look at SignalR
na, he is making a sniper for poe.trade
oddly, ClientWebSocket doesn't seem to read full messages as strings
not a big deal, just checking if there's already a complete solution i could use
--- ERROR ---
Critical error at address 5E13F8E0h:
Access violation: attempted to read from address 69C6217Ch
lol
So you took upon yourself of trying to read the poe game?
na, this is Path of Building
ah
I wouldn't publicly admit to reverse engineering the client
that would be suicide
that error happens when you leave the pob open for a couple days
I remember when I re'd poe client to figure a bug and found they used clipboard wrong which is why it was broken on wine yet worked on windows
how do you use a clipboard wrong?
I think they freed it with GlobalFree or something, been a while ago and I can't find the log now
Ah, ok
@chrome topaz @polar island did you consider allowing notes for items without buyouts?
allowing certain keywords would definitely be nice
Please don't post discord invites
the mercurytrade author has a dev discord
was posting the link
if you want it, i can pm it
also, i think its kind of lame that this server disables discord previews. that should be left to the user's discretion
@obtuse citrus how do you generate specs in stable.py? i noticed you overwrote some previous pull requests after merging in the 3.1 data

hmm
you said you're making a web version of currencycop?
also did you take my suggestion of counting chromatic and 6s items as their vendor recipe worth?
I was
but then some roadblocks introduced themselves that I really didn't care for solving
like still having to store session ids in a database due to how the report fetching would need to be done and I don't like that idea
what's stopping you from using localstorage?
oh
i think i know
cross-site requests and the like
yeah, but storing reports, history, fetching while the user is away, stuff like that
requires storing the session id
or credentials and I don't want to do that
create a windows service that reports to a central database
people aren't going to accumulate/mutate their networth if they dont have their computer on
can't you make the client do all that lifting?
and then have it give the server the stash info
what i just said ๐
But that completely negates the whole point of doing it as a web service is why I was going to do it
Which is why I was like, well if I have to just do CC in the browser again like it was with the app, just work on the app tbh
how do shaped/elder items work, theyre basically separate bases?
there are item tags like bow_shaper or bow_elder
but no base items with those tags
They aren't separate bases
Just items with extra tags
Well, flags that apply tags, I think
The assignment of tags for those items is in ItemClasses BTW, if you havven't found it otherwise
oh thanks ill check
can they have normal mods btw? i havent played this patch much >.>
Yes, they can
Being shaper/elder just adds the extra tag that enables the respective modifiers
Hm, is there a way to retrieve the complete map graphics and not just the icon from the CDN? I've only found this url to retrieve the icon: http://web.poecdn.com/image/Art/2DItems/Maps/Atlas2Maps/New/<name>.png
hm, too bad then I'll have to tinker around a bit to generate a matching shape before applying the image, thanks!
pretty sure you just draw the icon on top of the base icon?
Normally sure, but I'm toying around with http://js.cytoscape.org/ - currently i was unable to draw multiple images on one node
you can combine them before feeding them to the lib i guess
true, but with the options to make your own polygon shape it might be worthwhile to figure it out and build the map shape as polygon ๐
Honestly, I'd make the entire thing a single layer, then draw ontop of it
Would be easier, true but I wanted to try something new ๐
same tbh
looks good
looking good ๐ ๐
@gritty olive can you make it display average earning per update_interval?
so i can see if im earning say, 200c per hour
i wouldn't even lock it to the update interval, i would suggest adding the ability to set your own interval
so you could have a report that updates every 4 hours but displays average hourly earnings
is there a json file or something somewhere that has the coordinates of maps on the atlas?
pypoe can extract that information
just search in this channel, and you should find the info you need
Oh boy. an important milestone. it's been 1 week since i started my application and there have been zero issues
what app?
An incredibly lightweight unique/map/gem pricer
Added some basic info to http://poe.ovh
@pseudo ocean that wasn't intentional, fixed it
@delicate ore thats what the GAIN/LOSS is for
I mean, eh it's not an average of them all..
do you mean average over all time?
I added that, and some more
@gritty olive thank you!
i got a weird request... can you eventually make a mercurytrade-style overlay so you can see your earnings on-screen?
i think you can make a frameless/borderless always-on-top transparent draggable window in electron
thats how mercurytrade does it
even its just the report name and value with last gain/loss like on the left of that screenshot
if you won't do it, i might make a pull request for it in the future
I've asked whether it was possible to retrieve maps with their background, apparently it is with url params: http://web.poecdn.com/image/Art/2DItems/Maps/Atlas2Maps/New/Colosseum.png?mt=14&mn=1
while mt=x is coloring the icon according to the map tier if mn is also set
nice
Prices: $13.49 or ยฃ9.99 or 10 Exalted orbs -- https://www.reddit.com/r/pathofexile/comments/7mu7ys/poe_currency_flipper/
๐
Oni-Goroshis/hour plummeted from 640 to 320 after the change
And prices pretty much doubled
interesting
@mortal bone will you ever add currency cop to the tools list xD
Generally after the tool has proven itself and kept up to date. It prevents us from having to call the list that often
Also, send a mod mail lol it is a nice task list
Huh?
Oh, yeah. Reddit really likes to hide that. I should make it bigger
Send a forum link/website/developer that you want on their
Does anyone know if there's monster base health by level data somewhere? Like PoB says lvl 80 mobs have 12466 health, where is that from?
DefaultMonsterStats.dat
Also the actual hp depends on monster and where you can find it , becaues map tiers give extra hp to mobs and individual monsters have different hp
Oni-Goroshis/hour sounds like a qualilty metric
is the public attribute in the stash api used to signal someone making their tab private by giving a stash with public set to false?
try it, with one of your own tabs
argh, why does the API only give typeline and not base and item class?
getting the base from magic items is annoying af
annoying, indeed... not so hard tho
what is a consistent and simple method to do it?
a list of base items and regex?
kind of inefficient
plus you'd need to find in order of name length
because "Skean" would match for "Imperial Skean" as well for example
but I guess sorting a list of base items by length descending and picking the first one that matches should work
exactly
assuming there isn't any mod that makes stuff ambiguous
@simple ravine for rare items is typeLine always just the base?
or can you have a rare that still has other stuff in the typeline
not that I know of, I dont have anything in production yet
does the 'duplicated' property mean mirrored?
yes
@compact isle I noticed that the AJAX reply on pathofexile.com/trade contains an 'indexed' timestamp, would it be possible to expose that for the public stash API as well? At the moment the only way to track when an item gets listed is by running a server 24/7 from the start of a league and timestamping every item the very first time it appears. If you didn't do (or want) that, old items are (AFAIK) indistinguishable from new.
wouldn't work if they remove item then place it back
I don't really care about the edge cases, as long as it's consistent behavior (keeps first index or resets time are both fine for me)
@chrome topaz what behavior do you use for poe.trade for the age marker for items?
hash, not id, I guess to track currency usage as new items?
I'm kind of curious xyz, if you are willing to say, what database tech you use behind poe.trade
he once said it was all custom
yeah
not even a DBRMS?
the item search is custom
there's mysql for user data and kyoto-tycoon for URLs and item hashes
my first prototype (just for gathering market data, not even querying live data) used sqlite, but it kinda became too slow as the database became too big
anyway everybody else uses elasticsearch for item search so you might want to try that
I'm not looking to make an indexer
I'm looking to gather item price information for my neural network ๐
then what part is slow?
I wish I had actual trade data ๐ฆ the best I can do is track which items disappear reasonably fast and mark those as sales
my first prototype was quite naive, and involved some full table scans
also sqlite slows down when a table gets too big (millions of entries)
@chrome topaz roughly how much data storage do you use for the full up to date snapshot of all items?
like under 100 gigs
oh my initial prototype was also rather dumb in that it stored basically raw json data from the stream, icon links and json description and all without any deduplication
indexed time is quite different from "item placed in stash"
@chrome topaz for item price prediction I'm interested in 'what can this item sell for', while the stream gives 'what did 500 inexperienced players list this item for', without tracking actual trades the items listed are effectively noise
well good luck with that
i think about once per month there's people coming into this channel with that idea
my best model so far uses data from up to day 6 of abyss league
I think it's because then mostly experienced players were in maps
don't get me wrong, my model is (IMO) already quite succesful
it could just be so much better
I'm not too keen on sharing exact details but I can say that it's based on multilayer perceptrons
eh so a supervised algo
how much you made?
from flipping rares
I am training it on tagged (priced) data
or how do you measure success?
perceptrons are the most basic form of machine learning, supervised algorithms
@chrome topaz ah, I have made personally 60+ex, but I haven't really intensely watched it
I have various expert player friends that are very positive about it though
@gritty olive what would unsupervised here be? group items into similarity using machine learning and then looking up the cheapest similar item afterwards?
@chrome topaz I could've made a lot more without the one minute delay though...
most of the time it's already sold
i see
because as I understand supervised vs unsupervised is mainly whether or not your data is tagged (either by price, classification or otherwise)
also what I described is most certainly machine learning
that is not the difference between supervised and unsupervised
Supervised: Process, and compare to known dataset
Unsupervised: Derive a cost functor from the desired behavior, cost functor describes to your neural network the targeting offset. Network will adjust and improve over time to your cost functor description
"Unsupervised machine learning is the machine learning task of inferring a function to describe hidden structure from "unlabeled" data (a classification or categorization is not included in the observations)."
first sentence on wikipedia
@chrome topaz if you're curious, here's some flips suggested by the neural network: https://gist.github.com/orlp/083ad5aed98b31223ed40dbebdf44985
The key point is that it derives a cost function for the dataset that continously improves the neural net
regardless, you sounded a bit disappointed when I implied that my algorithm is supervised
What you described doesn't do that
why is that?
Because, it's based on your assumptions (which is fine) but not anywhere near what possible
what assumptions is it based on?
I think you have a bit of a too rose-colored idea of what unsupervised learning does, and a too rigid idea of what supervised learning does
Since to create a perceptron, you need an input, a bias, activation functions, and a output
the bias is learned
everyone uses (p)RELU activations anyway
the output is already pre-defined (predicted value)
and the input is as well (the item)
Supervised literally differs due to interference with the bias
bias/variance tradeoffs of supervised learning
oh you're talking about a different bias
since you said it right before activation functions I assumed you meant the bias at each layer
but the issues you're talking about are nowhere near the difficult part regarding this particular problem
Nope, sounds like you're using Keras, which is why you have some rigid ideas about it
practically speaking
Maybe for a supervised system
describe to me what an unsupervised solution would look like in this case
You don't have an unsupervised feeding the supervised functions yet it seems
I don't know what you mean by that
I am using keras by the way ๐
like my biggest mental hurdle is that since this is a regression problem, I don't even know what unsupervised regression would do
@gritty olive what do you mean by "an unsupervised feeding the supervised functions yet it seems"
R vs C
that's too vague to be useful
Classification vs Regression
so you're suggesting classifying items unsupervised into similar groups
well the only problem I'm interested in is regression, that is finding out how much an item will sell for
based on what assumptions though
predicting how much a previously unseen item will sell for based on data from previously sold items*
so you ultimately just have like two layers
Disspointment is from the fact, it requires the river to move, and is not predictive,
you would have been late to the dual mods, and oni
ohhh now I see what angle you're coming from
I don't really think unsupervised is what you're looking for
if I understand you correctly
your point is that a true intelligent AI can predict prices based on item merit alone, regardless of market?
somewhat, but it would require an unsupervised learning algorithm, a reinforcement, and supervised chained together
or just a bunch of path of building presets that can hotswap items ๐ and calculate DPS, life, etc values to determine item value
well (a few unsupervised)
Yeah, you could get all the popular builds, and build an api to modify items on PoB or pull out the code that does the calculations and build it into a model
and do comparisons
that would get you pretty close
fundamentally the problem still can't be solved without market data though
let's say you're a superintelligent AI
and I present you with a new unseen item
oni-gorochi
without knowing droprate
player popularity
you still couldn't say ANYTHING about the price
you'd atleast learn item popularity and could estimate 50-1ex
fundamentally merit is irrelevant, it doesn't matter how much an item is really worth, what matters is that you're the cheapest on poe.trade
which is reasonable
eh, not always
cheapest is for quick money, highest is for long-tail sells
I'm pretty confident that if GGG were to give me an anonimized data set of actual item trades that happened, my model would be incredibly accurate for almost all items
the big issue is that most stuff that gets listed never sells because either the item is fundamentally worthless (not a problem) or just heavily overpriced (big problem)
for items that are worthless ^ is true
or at least, highly focused for a single build and is also low in rolls ^ is true
however, items that have perfect rolls / enchants, ^ is not true
@gritty olive did you take a look at the sample I posted above?
of predictions the model does atm
no
Adds 19 to 36 Fire Damage to Attacks
Adds 3 to 43 Lightning Damage to Attacks
Adds 15 to 25 Cold Damage to Bow Attacks
Adds 4 to 43 Lightning Damage to Bow Attacks
โ
orlpbotBOT - Today at 1:03 AM
Rings, Price: 1, predicted: 19, range: 13-26 (account: cencen) ```
some predictions are simply dated because the model is only based on data from the first 6 days
This is my point, cheap but quick :D, not perfect rolls
It works for the middle ground, but it wouldn't work for the fringe
for that reason you can just use poeprices.info
or build your own basic one
did you mean can't?