#tooldev-general
1 messages · Page 72 of 1
Looks funky on mobile btw
yeah I have zero optimizations for mobile
lol
the tree doesn't support mobile anyway
lol
I remember someone was making a mobile friendly tree, maybe one day I can use that
Web one?
Yeah
Because the android app is outdated
It was either canvas or webgl
🖐
oh it was nord xD
Now kiss
How did you even extract data from their passive tree? When I reversed engineered it, I didn't really see any good way to get the pure values of all the nodes
HEH i did the most evil thing, I just gave it to them
I guess they did save a object with all the nodes?
if any1 needs a C/C++ dev hmu 👀
Don't remeber
you mean the actual JSON for poe skilltree?
nha, internal
yeah, I would read their code
it's either an api or math
read poeplanner one it's easier to read and supports the encoded url
what do you mean "internal"
at some point I will have to decode, and potentially build my own tree with jewel support
but that can wait
👀
oh I see
b = 256 * d.charCodeAt(0) + d.charCodeAt(1);
for (var f = 256 * d.charCodeAt(4) + d.charCodeAt(5), h = 6; h < 2 * f + 6; h += 2) c.push(256 * d.charCodeAt(h) + d.charCodeAt(h + 1));
for (var f = d.charCodeAt(h++), g = {
}, k = 0; k < f; k++) {
var l = 256 * d.charCodeAt(h++) + d.charCodeAt(h++),
n = d.charCodeAt(h++),
m = d.substr(h++, n),
h = h + (n - 1);
g[l] = m
}
return {
Cb: d.charCodeAt(3) & 3,
gc: d.charCodeAt(3) >>
2 & 3,
hc: d.charCodeAt(3) >> 4 & 3,
version: b,
Qa: d.charCodeAt(2) & 15,
Ya: d.charCodeAt(2) >> 4 & 15,
Jb: c,
Ld: 0 == f ? !1 : g
}
Looks like you have to shift some things around to get relevant information
Ouff
big oof for those variable names
Is fun
this is optimized for size, right?
ye
self-taught programmer, never uses variable names with more than 1 character
unless he's got 27 variables
Lol
:>
That's a minified source
good enough for figuring out whats going on
easy enough*
nah, when you have more than 27 variables you just start using UTF-8
and if your language doesn't support UTF-8 then change it
screams in C/C++
@winter fossil I'm assuming you didn't know what to do with "c" or "Jb" there
Since that is the array of numerical values
null == a && (a = '');
for (var b = this.kd(a, c), d = - this.Kb + 1, e = 0; e < b.Jb.length; e++) {
var f = !1,
g = h[b.Jb[e]];
g && g.aa() && ('Passive Point' ==
g.getName() && d--, f = !0);
f || d++
}
7 < ja ? d -= 0 == b.Cb ? 2 : 0 : (d -= 0 == b.Cb, d -= 0 == b.gc, d -= 0 == b.hc);
return {
Qa: b.Qa,
Ya: b.Ya,
level: d,
$d: this.Zf[b.version]
}
This is how you get that information
apparently
Would have to reverse engineer what those functions are but it looks like a simple lookup
Is the first one their decode or encode tho? They had them both
the first one is a decode
the second is a lookup using that decode
You'll need to know all those decoded values to do a lookup
But apparently there are other ways to do their node "enabled"
I know that they have a number encoded into the hash to determine if the tree should be in fullscreen or not haha
I don't really rember, can see if I can find my split up version of their code
@winter fossil this might explain it (it's a mapping) https://raw.githubusercontent.com/tcfunk/poe-planner/master/poebuilder.js
just scroll down a bit
ah is it poeplanner's* passive tree and not the offical?
that is probably old but it at least is not minified
they all support the same format to my knowledge
PoB also supports the format so it will have a section on decompiling it too
Ye but the code you've linked, is it from poeplanner or GGG's offical?
I know I got some files that makes sense of it all, don't know where I got them arrgg
We need some kind of write-up for this when you get it done :p
@gritty olive I've no idea of how poeplanners did theirs, GGG's encoding looks like this:
import $ from 'jquery';
$.base64 = function(e) {
function i(e, t) {
var r = n.indexOf(e.charAt(t));
if (r === -1)
throw "Cannot decode base64";
return r
}
function s(e) {
var n = 0, r, s, o = e.length, u = [];
e = String(e);
if (o === 0)
return e;
if (o % 4 !== 0)
throw "Cannot decode base64";
e.charAt(o - 1) === t && (n = 1,
e.charAt(o - 2) === t && (n = 2),
o -= 4);
for (r = 0; r < o; r += 4)
s = i(e, r) << 18 | i(e, r + 1) << 12 | i(e, r + 2) << 6 | i(e, r + 3),
u.push(String.fromCharCode(s >> 16, s >> 8 & 255, s & 255));
switch (n) {
case 1:
s = i(e, r) << 18 | i(e, r + 1) << 12 | i(e, r + 2) << 6,
u.push(String.fromCharCode(s >> 16, s >> 8 & 255));
break;
case 2:
s = i(e, r) << 18 | i(e, r + 1) << 12,
u.push(String.fromCharCode(s >> 16))
}
return u.join("")
}
function o(e, t) {
var n = e.charCodeAt(t);
if (n > 255)
throw "INVALID_CHARACTER_ERR: DOM Exception 5";
return n
}
function u(e) {
if (arguments.length !== 1)
throw "SyntaxError: exactly one argument required";
e = String(e);
var r, i, s = [], u = e.length - e.length % 3;
if (e.length === 0)
return e;
for (r = 0; r < u; r += 3)
i = o(e, r) << 16 | o(e, r + 1) << 8 | o(e, r + 2),
s.push(n.charAt(i >> 18)),
s.push(n.charAt(i >> 12 & 63)),
s.push(n.charAt(i >> 6 & 63)),
s.push(n.charAt(i & 63));
switch (e.length - u) {
case 1:
i = o(e, r) << 16,
s.push(n.charAt(i >> 18) + n.charAt(i >> 12 & 63) + t + t);
break;
case 2:
i = o(e, r) << 16 | o(e, r + 1) << 8,
s.push(n.charAt(i >> 18) + n.charAt(i >> 12 & 63) + n.charAt(i >> 6 & 63) + t)
}
return s.join("")
}
var t = "=", n = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", r = "1.0";
return {
decode: s,
encode: u,
VERSION: r
}
}($);
export default $.base64;
yeah that looks like the same way
Then in the core they have this function:
this.loadHistoryUrl = function(t) {
t = t.replace(/-/g, "+").replace(/_/g, "/");
try {
t = e.base64.decode(t)
} catch (n) {
this.errorMessage = "Failed to load build from URL. Please make sure it was copied correctly.";
var r = this
, i = function() {
r.events.pointsChanged.remove(i),
r.errorMessage = null
};
this.events.pointsChanged.add(i);
return
}
var s = new v;
s.setDataString(t);
var o = s.readInt()
, u = s.readInt8()
, a = s.readInt8()
, f = 0;
o > 0 && (f = s.readInt8());
if (o != N.length) {
alert("The build you are trying to load is using an old version of the passive tree and will not work.");
return
}
var l = [];
while (s.hasData())
l.push(s.readInt16());
this.loadCharacterData(u, a, l),
f == 1 && this.toggleFullScreen(!0)
}
Where "s" is
function byteDecoder() {
this.init = function() {
this.dataString = "",
this.position = 0
}
this.bytesToInt16 = function(e) {
return this.bytesToInt(e, 2)
}
this.bytesToInt = function(e, t) {
t = t || 4;
var n = 0;
for (var r = 0; r < t; ++r)
n += e[r],
r < t - 1 && (n <<= 8);
return n
}
this.hasData = function() {
return this.position < this.dataString.length
}
this.getDataString = function() {
return this.dataString
}
this.setDataString = function(e) {
this.dataString = e,
this.position = 0
}
this.readInt8 = function() {
return this.readInt(1)
}
this.readInt16 = function() {
return this.readInt(2)
}
this.readInt = function(e) {
e = e || 4;
var t = this.position + e;
if (t > this.dataString.length)
throw "Integer read exceeds bounds";
var n = [];
for (; this.position < t; ++this.position)
n.push(this.dataString.charAt(this.position).charCodeAt(0));
return this.bytesToInt(n, e)
}
this.init()
}
export default byteDecoder;
That's the official web one and it's kinda long haha. I think poeplanner and PoB have done a better job to decode / encode the tree atleast
dunno if it's of much help for the questions you asked tho :/
if b:byte(1) == 0 and b:byte(2) == 2 then
-- Hold on to your headgear, it looks like a PoE Planner link
-- Let's grab a scalpel and start peeling back the 50 layers of base 64 encoding
local treeLinkLen = b:byte(4) * 256 + b:byte(5)
local treeLink = b:sub(6, 6 + treeLinkLen - 1)
b = common.base64.decode(treeLink:gsub("^.+/",""):gsub("-","+"):gsub("_","/"))
classId = b:byte(3)
ascendClassId = b:byte(4)
bandits = b:byte(5)
nodes = b:sub(8, -1)
elseif b:byte(1) == 0 and b:byte(2) == 4 then
-- PoE Planner version 4
-- Now with 50% fewer layers of base 64 encoding
classId = b:byte(6) % 16
ascendClassId = m_floor(b:byte(6) / 16)
bandits = b:byte(7)
local numNodes = b:byte(8) * 256 + b:byte(9)
nodes = b:sub(10, 10 + numNodes * 2 - 1)
ye, ALOT nicer
right
50% fewer, not less 
There is a nice last else statement with a very pointed comment
else
local ver = b:byte(1) * 16777216 + b:byte(2) * 65536 + b:byte(3) * 256 + b:byte(4)
if ver > 4 then
return "Invalid tree link (unknown version number '"..ver.."')"
end
classId = b:byte(5)
ascendClassId = 0--(ver >= 4) and b:byte(6) or 0 -- This value would be reliable if the developer of a certain online skill tree planner *cough* PoE Planner *cough* hadn't bollocked up
-- the generation of the official tree URL. The user would most likely import the PoE Planner URL instead but that can't be relied upon.
nodes = b:sub(ver >= 4 and 8 or 7, -1)
end
if ascendClassId == 0 and node.ascendancyName then
-- Just guess the ascendancy class based on the allocated nodes
ascendClassId = self.tree.ascendNameMap[node.ascendancyName].ascendClassId
end
ahahah

var o = s.readInt()
, u = s.readInt8()
, a = s.readInt8()
, f = 0;
in the official, f here is if it should be fullscreen or not 😃
Why GGG, why even
heh... that bytesToInt function makes me cringe
@winter fossil idk you can just use a path to change that
Nha it really is their way to determine if the tree should be viewed in fullscreen or not:
Fullscreen: https://www.pathofexile.com/fullscreen-passive-skill-tree/3.3.1/AAAABAQAARm0my3Cjvih
Normal: https://www.pathofexile.com/passive-skill-tree/3.3.1/AAAABAQAABm0my3Cjvih
ah nwm they've changed the first thing to fullscreen-passive-skill-tree
It was like that in one point of time atleast - they've prolly changed it since it doesn't really make sense
vs
AAAABAMBAN-K6QI= - loads as normal
AAAABAMBAd-K6QI= - loads as fullscreen
Wait no the links in the first stuff I linked also differs:
AAAABAQAARm0my3Cjvih
AAAABAQAABm0my3Cjvih
So they still kinda have it haha
yeah, I use the path to ensure full-screen
Huh, I read through the entire terms and service agreement and that is actually not against the rules laid out
🤔
Well the person who changed it, told me I could reply to them
Will probably take years to get a response tho
🤔
Dude this is getting absurd
My small ass link gets nerfed but these huge posts don't?
we have an in-house lawyer at work that I asked to review and they said it's fully within my rights to post a donation link as of today's terms of service ¯_(ツ)_/¯
Oh well, sent a message, will see what happens
Hmm, I had donation links on the mtx finder for a couple years no one complained
that wasn't using GGG assets of any kind right
Seems odd that they would remove the link. Is might be possible for the snarky line of text
Erm...
wasn't that a JS link or something
Yeah
i think they have to make these blanket restrictions to protect their IP and stuff like your scripto doesn't, legally, threaten their IP
apparently Nijiko is too threatening
Even if I put one on PoESkillTree it would be fine
Although I did ask written permission to use their assets
Nijiko are they only telling you to take it off CurrencyCop and related posts, or is it something else?
I wonder why they consider it differently
Looks like support juat removed it from the post
I think it is the line of text before the link
"can't ask for in-game items"
ah
Lmao, they literally just removed it, and told me that it isn't allowed according to "rules"
So I changed the text and don't use a donation link anymore, @mortal bone it might have been that text, maybe too tongue in cheek
Maybe, I would just shoot them an email (or email bex directly) and see what it up. They tend to not care about donation links
Yeah, thats what I ended up doing, I don't think they should penalize devs
we need that beer to focus
They do with their "apis" already tho :,(
was going to say they needed a thing and realized they already have it and I made myself sad
yeah apparently its a hack
otherwise my code would have reported normal item status to those
well... currently it does report that
Can't you just check for resists on implicit? Don't think other boots have it at all
Well, since all of this is textual data, and I have to build up a database for all of that, not yet
All in time :3
Gotta build your own eheh
Luckily I have one 😄
I wonder why he does it only for Armor / Energy Shield ones
not the Energy Shield / Evasion ones
...
or the armor / evasion
it's just assuming all two-toned boots are armour/es right
when is this used
when you save an item via text?
Whenever an item gets parsed
either from importing or building
its just the Item Class
huh
so if i wear some armor/eva magic boots and try to import that character, it'll assume the base name is armour/es?
gets coffee
"hack" is pretty good description lol
what is this you're building?
and/or have already built
rare parsing in currencycop?
oshitson
so you're web-appizing the functionality from POB?
a read-only form yeah
so we can get rid of pastebin urls :>
since arl could use that url as well to get the pastebin
hmm briefly got a 404 in the skill tree section, can't get it again
I was reloading the app
oh
live development ftw
hope GGG could export Atlas, Bandits with APIs someday
nice
mmmm Quartz Flask of Meat
This is looking good btw 😄
@gritty olive I once got reported for having a single donation link burried somewhere deep in my thread.
one of the forum mods proceeded to remove it, messing up half of the threads formatting and breaking it
oohf
for "RMT"
Niiice
that's horrible
RMT for a not-ingame service
Donation links work in reverse to GGG's anti-scamming policy
if you report scammers, you get muted
Yea
I should really get in on that stuff if it's not punishable
But my moral compass, for some reason, points away from it and I can't force myself to do it v-v
In my eyes, it's probably the single most questionable aspect of GGG's policy
I've had an idea on how to approach that
Implemenet a "reputation" system ingame that'd only work if the user has interacted with the other player
potentially, only if the player has whispered the user first
so that you can't just abuse that feature
But then again, people would abuse it to down-vote whatever deals they dislike etc
Yea
League of Legends once had this "tribunal" idea
this might actually work in PoE in a way
Tribunal sucked lol
The best part about the links is that they aren't against any official rule 😦
I know
I'll likely add my patreon at one point
again?
it was never in there
lol
I added my patreon I fully expect to be banned from the forums for some reason :/
Nah, you won't
I think these type of requests are handled by "first level forum support"
They won't let things escalate, at least it wouldn't be wise
I raised my concern to bex, idk whats gonna happen from there
keep me updated, I'm curious about that
I PMd the mod who removed my links ages ago
no reply
yeah I don't expect a response either
I think you'll get one
at least a generic one
At least that's my experience with Bex
She's usually very engaged and helpful
I poke her with filter questions since ~2 years (not too much, usually 1-2 PM's a league, to prevent ambiguities and talk about the current FOTM of bugs)
Honestly, it doesn't matter too much to me. The bit of support is nice, but if they don't want such links on the forums, I'm absolutely fine with not adding any. That being said, I'd like to have some clarity on the matter. A proper yes/no ruling that applies to everyone.
Same
lol i tried poebuddy with a different pastebin
and the item list is like fullrandom order
this is super useful for my mac
now i can yell at people's build's instead of impotently staring at pastebin gibberish since i can't install POB
@velvet fog "Name": "...", "IconPath": "http://web.poecdn.com/image/Art/2DItems/Gems/InfernalBlow.png?scale=1&w=1&h=1",
found a missing name
never heard of play on mac, will have to give it a try
it's "..." in .dat file, not missing
lol rip
@velvet fog Isn't Touch of God (31) just Doryani's Touch?
I think it's a bit weird indeed regarding the policies around scamming. It's a cop-out in my opinion... easy way out. But there might be something more nuanced to it as well. Remember all the rage about that shareholder who have (allegedly had) those RMT websites. People can call it paranoia or whatever, but remember this quote?
"There is no such thing as paranoia. Your worst fears can come true at any moment"
- Hunter S. Thompson
My worst fear is that our build agents are disabled without warning again
Guess what happened
your CI/CD build agents?
Yep
They switched to dockerized agents that can't build our one legacy component and the one remaining one is often disabled or busy
Super fun
I.e. not so ci
For the wiki people
Oooh right
Discrete Integration, eh?
anyone know what happened to the ability to lookup an account name by toon name? this used to work https://www.pathofexile.com/character-window/get-account-name-by-character?character=thegrabbindragon
Discrete integration?
@simple ravine A joke on broken "continuous integration" 😃
oh hah
somebody wrote me a PM telling my website is "really slow" and offering to rewrite it in react, feelsbadman
@chrome topaz I'll rewrite it in C#, if you think his offer is silly :^)
you shittin' on c#?
ah... I interpreted the thing as "If you think React is silly..."
Nah, if he thinks that offer is silly, he should consider mine
Kestrel is pretty fast.
Honestly it's not the UI that's slow....
It's just the server so rewriting in react wouldn't do much
we get that... that's the silly part.
Oh, I may have not picked up your sarcasm
rewrite stash api in react

use gRPC
graphql is not cool and is a caching nightmare
Honestly just because you can use it in that scenario I don't think it should
the negatives of it are too high
for very little real world gain
rebuild using microservices, xyz 
rebuild using cassandra 
or node 
node is fine, we built a microservice that scaled up to 74 billion requests a day, you just have to be very mindful of how you code
74 billion requests of "hey, here's your simple thing you asked for", I assume
Payloads of different sizes, was a logging service
wait, you're doing CPU intensive work in node? 
yeah it was very impressive

If you think that's facepalm
Run Node.js on Android and iOS. Plugins available for React Native and Cordova.
rip battery
smacks the hood of nodejs
This bad boi is everywhere
microservices? sorry, that's too mainstream now, I only do nanoservices
picoservices are the cool thing rn
every line of code is its own process and they use message passing to pass variables around
no, you just don't get it, it's nanoservices
picoservices are the new thing nano services are old news
every character is it's own process
all I can say is if you aren't rewriting your app in nanoservices right now, you're missing out
I prefer the new fad, self-service where the user has to do everything
I prefer the new frontend, where you need 8 billion things to show some text in a browser
you mean Polymer?
shims were bad enough
webdev was a mistake
guys guys guys, you need 800 npm packages to change the browser route
front end development is a f*ing joke. every week there's this new mvvm framework you need to learn, or something similar
¯_(ツ)_/¯


oops I broke the css
¯_(ツ)_/¯
can you pin memory to the stack in node?
the get-account-name-by-character thing being broken is fixed now, sorry for taking a while to fix
got a message that GGG private api will shift to OAuth2 backend soon
I'm really hyped on this
certainly been a long time coming
goodbye currency cop
Just kidding OAuth2 is easy to bypass
until we get some sort of official api thing
wut
OAuth2 was made at the behest of the person who wrote OAuth1.0
It's a much more insecure variant of OAuth
With glaring security holes
I wrote books on OAuth 😄
also... @compact isle if you're webdev #2 who is webdev #1 🤔
well yeah it's a replacement for tokens nothing else
the other web dev?
we have two
yeah I saw you post on the forum and read your signature
well there's Novynn and Rory
Don't know if I have ever interacted with rory
That's literally me 
http://grindinggear.com/ © 2006-2016 Grinding Gear Games
gotta remember to slap a <?= date('Y') ?> in there at some point 🤔
Thats cheating
yes
Hm, I thought it sounded familiar, then was like eh probably cause of doctor who (rory)
there's also that other Rory guy who does balance or something
It's 3.38
"Crit Multiplier", fmt: "d%%"
I'm formatting the way PoB wants me toooo
hm
let me make sure xD
<PlayerStat stat="CritMultiplier" value="3.38"/>
🤔
Why the fuck is it 338% on PoB
Because it's damage * 3.38
where in the code is it doing that o_O
Well, I mean, that's what crit multi is, so it is 338% of your damage
That just means the display is 3.38 * 100
I'm guessing lua printf d is diff than C printf d
multiplier
shakes fist at specifications
literally says in the description
You guys are talking about how it works
I'm talking about how PoB formats the numbers
there is a massive difference in these two things
im too tired, but i would have posted a phteven 'maffs' thing
well, sigh... I give up.
local valStr = s_format("%"..statData.fmt, val) where val is 3.38
this means that d in s_format is different than the C lib
thanks lua
Do you programmatically do
var damage = someStuff * 123% or
var damage = someStuff * 1.23
it's just a flesh wound
looks like rounding is slightly different too Unreserved Mana: 24%
that's literally just how math works.
decimalMultuplier2percentage(x) => x * 100
I'm not saying you're wrong
I'm saying that there can be two ways of displaying the number and both are correct
tnx lua
that i agree with
are you using headless pob or just parsing it and using the summary?
I've wrote most of it in JS

¯_(ツ)_/¯
what is not in JS?
Hm, the tree
However, at some point I'll have to do it
or use something that supports jewels in it
@versed ginkgo
Best thing so far is that SCION is used everywhere for the color white
colorCodes.SCION.."W"
in PoB
that works yeah
PoB doesn't have resist colors and I added those
I like the emojis for res
oh like in poeapp?
🔥 ❄ ⚡ etc
Life: 3,925 (222%) | Reg: 181/s (4.6%) | Leech 777/s (19.8%)
Mana: 159/636 (0%) | Reg: 13/s (2.1%) | Leech 64/s (10.1%)
Secondary: Evasion: 4,974 | Dodge: 30%
DPS: 16,035 @ 5.42/s
Crit: Chance 54.00% | Multiplier: 319%
Molten Strike + Ancestral Call + Multistrike + Elemental Damage with Attacks + Life Gain on Hit + Concentrated Effect
Playerrecently: Taunted Enemy
Enemy: Taunted
Player: Fortify
Pastebin | WebTree - powered by Path of Building.
wut
what the fak is chaos
✳️ is apparently chaos according to twitter
either 🖤 or 💀
skull imo
Is that linux?
on win10

ah you don't have the april update
I used to hate windows emojis
now I really enjoy them
colorCodes.DEXTERITY = colorCodes.RANGER
colorCodes.INTELLIGENCE = colorCodes.WITCH```
heh
I think the icons are just in the way
Same they look a bit out of place when not aligned
I'd go with only icons or only text
the icons dont serve much purpose
ye thats why I put them out of the way
ugh
you read the numbers slower with the icons next to it
out of the way it is
they might come / go
who knows
focuses on the items
which all of a sudden broke lol
shakes fist at cloudflare
I chose icons because no space in the bot but yeah triple coding usnt really necessary
Colour plus icons plus text is a bit much
you will never forget what they are now
Is it normal that the values don't update on the left when changing nodes on the tree yet?
Oki
A giant screenshot 
Can you make it so if you change between tree>items>skills it resets the tree?
yeah, maybe @compact isle can add a query param to prevent people from modifying the tree

Better hide, there's an angery sloth. He got a cake and is not afraid to use it
@gritty olive art looks nice but sticks to the mouse, might be my browser only?
Weird should go away if you mouseleave
Seems it only does it on my work laptop, works fine at home
I should note that I had to click it to show it and it's not on mouseover, so my work laptop's browser is funky
Defunky
de_funky
What is your work browser 🤔
will check later
My friend has everything in light mode, even Discord 
His IDE is solarized light VS Code
and he's 10 years younger than me
i dont get it
most of my older colleagues have light themes
I'm 33 and use mostly dark
my dad has (had at least) light IDE
but this young 23 year old dude has everything in light mode
i dont get it
personal pref ™
and he's a prodigy developer
i am also a guy who dislikes the light we have in our office
while 2 others like it
🤷
I use a light IDE sometimes though, when it's in a bright environment and the screen is glossy
i mean if you use windows
lots of shit is white by default
so black ide might lead to flashing shit
he uses mac
i guess a lot is white by default in macos too
Yep most OSes
i mean some people also like the blue filter stuff
i hate having "wrong" colors
Microsoft is making more and more things adhere to the dark/light preference though
didnt even install any dev tools on my new desktop
u doxin urself
shrug
go at it.
there are different versions
the screenshot is Enterprise edition, but there is a Community edition which is free
for 90% of developers, Community edition is all you need
i never liked the hotkeys in visual studio
multi-layer commands i can never remember
they're customizable
¯_(ツ)_/¯
and you also have the ctrl+t and u can type whatever u want in there, much like in VS Code and Sublime etc where u do Ctrl+P and type the command
ah
i've only used it for one project at work so i didn't spend time to learn/customize much
makes sense
but Unity recently switched to Visual Studio so i may need to use it more
recently?
recently in my world
which is what happens when you don't update unity for forever
wise choice if you want to keep your shit working
they're pretty good about deprecation
in my experience upgrading a unity project requires black magic to not break
C# 7.3 is nice, C# 8 is gonna be god tier
wonder how long it'll take Unity to figure out those things
does unity need those things
there are some tricky stuff in C# 8 that has taken Microsoft multiple attempts to get right
its 90% light scripting work
well, depends what u do i guess
Aren't people doing full fledged game stuff in Unity as well?
that's not just 'light scripting' in my book
there are more and more triple A games coming out on unity
i would agree but i'm not doing anything crazy on it
i think if you look at Hearthstone code you can see crazy shit
you'd probably want to rewrite the shit
they definitely rewrote a lot of it
tbh i didnt enjoy writing a game
so i mostly never continued my personal projects
i didnt like the gui things you had to do in unity :<
to do in-game GUI stuff or to customize the Unity GUI?
it seems pretty cool, you can get a lot going if you put in the work
but it is pretty awful work
the one project we did was enough for me
i wish they made it more streamlined instead of me writing up pixel spacers by hand
I thought game dev was pretty nice paid
But I have to say, and no offense to anyone... game developers' code is probably the wackiest code I've seen
especially when they try to be application developers, and write code that isn't purely 'math based game stuff'
there's no standards and nobody in the industry cares
people don't hold workshops or analyze code for quality/cleanliness
it's pretty much garbage across the board
mine included
any time i ask for feedback people are like "if it works it doesn't matter"
There are a lot of application/backend developers who reason the same way. I despise it
But there are some strong movements in 'my' space for clean architecture, DDD, TDD, S.O.L.I.D. etc
what space is that?
backend
oh
the VS project i got put on at work is application/backend and everyone else on the project thinks like that as well
i left for a few weeks to do a different project and when i came back 90% of the base functionality was broken
the application barely functioned
cus they were only concerned with the success of the feature they were pushing instead of code quality and cleanliness
game devs doing backend work?
o
i'm not a gamedev by trade
hobbyist
but i go to meetups with gamedevs by trade
so the project you were on, were they professional developers or hobbyists as well?
the work project is non-game-dev, just web application development for a client
supposedly "professional" devs but
they didn't seem to give a crap
well, there are a bunch of those in the professional realm as well, for sure
like in any industry
there are burger flippers vs michelin chefs in the coding world too
some of these guys are michelin in their own architecture of choice but when they get put on a web dev project they just fly by the seat of their pants
POST calls to restful API services where they forget to actually send any data, server always responds with an error message
stuff like that
I have my IDE in light, my terminal (which I hardly use because of vscode) is dark, and discord is dark
I'm so used to Visual Studio, VS Code is just not cutting it feature wise for me
it's alright for simpler things like frontend / node etc
Even for those its still kind of eh
Visual Studio 2017 ❤
@simple ravine depends on the kind of work you do. If it's its contract work and it just needs to work you can't expect clean code but some things in our codebase are outright disgusting. Namely out pdf report generator
If you'd let code analysis run on it I am sure it'd implode
okay I took a nap lets check out these tooltips
@versed ginkgo let me know if it happens now I purged the cloudflare cache
Coolbeans , will be able to check in like 3 hours
i looked earlier today and it never happened
@gritty olive Still does the same lol, not a trainsmash and probably something wrong with the laptop
@versed ginkgo what version of chrome?
Version 67.0.3396.99 (Official Build) (64-bit)
is mine as well lol
what extensions do you have?
Jut docs
super weird
I did cancel a software push the other day when it was halfway through with it. Busy getting that sorted and maybe it'll be fine after
how do you get it to happen, just hover over the item?
._.
might have to clear your cache
Did already, ctrl F5
force clear
That was me testing and cloudflare is not nice about this kind of stuff
Oh well, problem solved \o/
?{{pkg.version}} problem solved forever
chrome makes the tooltip content blurry
gross
Looks fine to me
nawh its a known issue
modifiers: {
computeStyle: {
gpuAcceleration: false
}
}
}```
disgusting gpu
The CSS Engine differences between firefox / chrome is disgusting
top firefox, bottom chrome
Oh I see the blurriness now
Lol cool
@versed ginkgo https://poe.technology/poebuddy/PUyYP8zC#share-modal
:O
going to make it easy to get the pastebin for PoB
confused at what you're asking
Currently we put the pastebin at the end of your url to load up the build, will it have the option to import similar to that exporting box?
yeah
I noticed it changed...
Does poe.trade live search have same delay with manually processing stashes using poe apis?
oh, is it hard to get approved?
Thank you
So what stops people from using poe.trade live search with broadest possible filter and use that?
But there is virtually no difference between a user doing a live search and someones application
Is it just me or is poe-rates completely dead broken
displayed changeid seems stuck aswell
and quite far behind
229442212-238659515-224549323-257915969-242827401
current vs poe-rate's
222239822-231025835-217331821-249682775-235005771
😄
So they added a delay to the public stash tabs?
Yeah I remember that 🤔 poeprices.net is apparently dead
according to forum posters
¯_(ツ)_/¯
tbh the tool didnt work at all mostly
A simple tool to price check your items in path of exile by copy and paste

for uniques it supposedly worked fine
Idk people want me to use it for currency-cop and I was thinking about using it for the poebuddy
mostly just to show a calculation of how much a build would cost in theory
Just to stop people from saying their shitty watchers eyes builds are league starters
cant stop em
can't stop, won't stop
@gritty olive not sure if aware
Refused to display 'https://poe.technology/skill-tree/AAAABAECAGOnnsTdRqa-7DiPGjI05OwBb0VHS67Q0O98i3oRga4-9UunCHy7bAuFeylPwcWnKzbFwGZtbOkCD6vGrhFQDkhSU2ZUX9CMNnflaPK-OjwtVEfqEO_rm1jndBslPO-vbA5cmjsLYTH7VkiCm4x2TLO1SCy_Z5utM-L38YowW11JJDfsGMNt6xS_CL6K6NabJm0Zf8aX9EV-l5XP3cEABAdd8nYR62M62BGWXGuDXzLRHNxfajY9xYoWvxhdKwo1ueDYIvTkUWr6JSeP-tgkPAXQH4RIG8gfAp48-F_ZW5_fPV97jKdtoS8Z1yGQES_r7pMn' in a frame because it set 'X-Frame-Options' to 'sameorigin'.
also http://poe.technology/poebuddy/u3D2GQ8f#items-view can't seem to tell that there's two HOWAs
interesting
why does that one fail
oh
@summer stump https://poe.technology/poebuddy/u3D2GQ8f#items-view
https only
Setup a cloudflare rule to enforce it
thanks x) thats my hope
@compact isle looks like the skill tree doesn't support touch events
skilltree never worked on phones
It wouldn't be too hard to fix, just use touch start / touch end and a touch-action: auto css

doesnt work anymore nice
custom skill-tree
is there a list of skill tree versions
Oh so it's locked now?
it properly looks up versions too

poe skill tree doesnt work on mobile
Unfortunate
What is the reliable way to identify race award or alt art items from publish stash stream? I am looking for whether there is a key has ‘RaceAward’ in it AND the key value is True. However, this turns out to be not working every time.
@noble siren do you make poeprices?
👍
Shouldn't this line use the rangeSpec defined above 🤔 https://github.com/Openarl/PathOfBuilding/blob/master/Classes/Item.lua#L278
shrugs
@compact isle Garena get-account-name-by-character API return code 500
curl -X GET "https://web.poe.garena.tw/character-window/get-account-name-by-character?character=%E9%9B%95%E5%83%8F" -H "accept: */*"
that should be fixed when they get their 3.3.1c
okay, thanks
Can someone help me with this? Thanks ahead of time. What is the reliable way to identify race award or alt art items from publish stash stream? I am looking for whether there is a key has ‘RaceAward’ in it AND the key value is True. However, this turns out to be not working every time.
How come the web and backend is tied to the game patch, @compact isle?
organically grown
Probably did it ontop of game specific patches
shakes fist at cloudflare caching
so good and so annoying
@timid hemlock vaal arc is supposed to have the 15% more damage per remaining chain aswell similar to arc? ^^ was it missed?
Thanks @velvet fog ! Do you actually use '^[\s]RaceReward$' as a regexp to detect the key?
@simple ravine well the obvious answer is that the servers and the website share code and need to be at the same version
Any dev in here?
like, GGG dev
There are some who browse it why
Just have some information I would like to pass on to them
Probably better in an email if you feel it’s important
Gotcha
If anyone have trouble with TradeMacro Ctrl+Q of currency (http 500), edit this file \resources\ahk\TradeMacro.ahk find "&online=x&want=" replace with "&online=x&stock=&want="
^ that's my bad, should be fixed now
@gritty olive Body armor socket colors are all green, while the socketed gems are of different colors, same is happening to all the other items in this PoB: https://pastebin.com/tsqrn16J
🤔
I definitely copy pasted maybe I fucked the copy pasta up
Didn't do it before, so it's possible
Oh, broken pob then?
yeah

Okay 👀
When checking tree in Chrome mobile browser it's hard to check what the nodes are, you need to tap the nodes and hold them in to view them, they won't display with a single tap. Also hard to tap them because they are so tiny and it keeps thinking I'm trying to pan the screen so it moves away.
Can't really read them while you're holding your finger on them, which is probably the bigger issue here
Can imagine yeah
Have you told the guys on the xbox discord about poebuddy? They could probably make use of it the most
That place is vastly different
Does the private stash api have a call limit?
There's some info about rate limits in the pins
yes
@compact isle missing description http://www.pathofexile.com/api/leagues?type=main
@compact isle wrong video on /delve ?
🙂
@compact isle can we get some APIs with mod prefix and suffixes and item APIs, or can I work at GGG and build them
I have cobbled my own together but with every new league its another cobbling to get back to a functional state
Obv leak prevention and stuff is necessary sigh even an API (that doesn't require unpacking ggpk and cobbling info to a usable state that is still missing tons of info) that updates on release is better than nothing
Anyway just venting soz
Idk tencent stocks...
if you wait long enough, maybe they've dropped further
that looks pretty good
i just dont see the use case honestly
i'd not want to plan on my phone but it seems pretty complete on a glance
lots of people such as myself like to be able to mock stuff out on the go
like I used poemate a lot
poemate seemed up to date but its switched to using ads
because they couldnt do in app donations anymore
i havnt used it since they added ads so maybe
the most recent tree changes have been subtle enough that would likely not notice at a glance
true
Looks like it has been removed
people said it had viruses probably why it was removed from forum
¯_(ツ)_/¯
looks cool though

👋
haha
@gritty olive wrong channel so here again: VP1fnwj8 produces an internal server error
and fucks with my bot too
Life: 3,500 (176%) | Reg: 98/s (2.8%) | Leech 497/s (14.2%)
Mana: 1,457/2,650 (174%) | Reg: 219/s (8.2%)
AVG: 0
Flameblast + Firestorm + Cast while Channelling + Concentrated Effect + Elemental Focus + Controlled Destruction + Arcane Surge
Pastebin | WebTree - powered by Path of Building.
oh cool
it's the items
at least on my side it is
slaps the hood of vscode
this bad boy... is pretty bad
but not as bad as sublime
community edition exists
barebones but good enough imo
oh lord
he fucked with me
he has firestorm linked in his main setup and i only show avg for that
heh
fixed my bot up again and shilled for your site
payment details will come in the next league
💸
😏

Diacritics messed me up
Hey guys, are there any rules regarding reading pixel colors of PoE?
Made something simple for fun with my RGB keyboard: https://gfycat.com/impossibleuniqueatlasmoth
as long as you aren't using it to bot I don't see why it would be
can change league prices now
cloak has no price?
nope
sometimes it is hard to calculate the pricing or its missing or something else
👍
Life: 3,500 (176%) | Reg: 98/s (2.8%) | Leech 497/s (14.2%)
Mana: 1,457/2,650 (174%) | Reg: 219/s (8.2%)
AVG: 0
Flameblast + Firestorm + Cast while Channelling + Concentrated Effect + Elemental Focus + Controlled Destruction + Arcane Surge
Pastebin | WebTree - powered by Path of Building.
multi needs to pull
was making sure I wasn't seeing things haha
found a new issue
wonder if you support it
well you don't show items so probably 🤔
Life: 401 (169%) | Reg: 7/s (1.8%) | Leech 80/s (20.0%)
Energy Shield: 51 (25%)
Mana: 436 (101%) | Reg: 12/s (2.8%)
Secondary: Dodge: 40% | Spell Dodge: 30%
DPS: 47,374 @ 2.13/s
Crit: Chance 7.98% | Multiplier: 100%
Hit Chance: 95.00%
Elemental Hit + Greater Multiple Projectiles + Elemental Damage with Attacks + Mirage Archer + Combustion + Slower Projectiles
Pastebin | WebTree - powered by Path of Building.
Isn't there a bot spam channel for this?
not to my knowledge
Hi guys 😋 I have a question! I am working on a tool similar to Acquisition that would help me post item trades since I don't have Premium Stash Tabs. I am able to edit my shop and post via the tool, however this requires me to manually log in to the PathofExile website for it to work. If I log out, the edit post no longer does anything until I log back in. I have tried to automate logging in but I get the error: Security token has expired. Please submit the form again. Any ideas how to bypass this and to login using the form data with POST?
You'll have to get a fresh token programmatically and use it to post against the form
Thank you for your reply~! Are you able to elaborate on that please? If it's as simple as what you have said then I'll do some research on how I might implement this function.
Yep, you'll have to scrape the login for a token and use it to login with, iirc Acquisition does this as well
Super 😄 Thank you for your quick replies. Will try to figure out how to go about doing this!
you feel that 2 bot messages are spam :p?
getting closer than 1 message 😛
Such a boss @gritty olive. Nice job on the new tool.
Just saw this and thought it was cool
Not sure if this is the right place to post it but 🤔
It is cool. It's @gritty olive's new tool. Veteran tool dev at this point :P
Is it just me or this exchange seems incomplete? 
Ey dude deleted his praise
Added experience and mana 😄
very nice
thanks @remote yoke 😄
@forest heron hmmmmmmm
are there any other PoE profiles like this from corsair community?
@forest heron https://alex.krastev.org/users/profiles/183/profile
@grave wren I'm assuming a lot of these broken PoB codes come from somewhere other than PoB?
This bad boy is a work of art: n5d9n8EM
@bold edge I'm using the coolermaster sdk, it's not a profile (only the mousepad is a corsair)
@gritty olive they're from this chat
people do crazy things
i facepalmed very hard at that one
the feeling when your bizspark thing runs out and you're so accustomed to all the Enterprise-only features in Visual Studio... this is hurting my wallet lol
Visual Studio 4 life
I do enjoy doing lots of low-level perf stuff, and the diagnostics tools in Enterprise are nice
https://i.imgur.com/qxUmq5m.png
More Minion and Aura mods. will this affect origin mods? only saw it on jewels with tags
@velvet fog looks like your api is missing some of the abyss jewels and tabula rasa image is broken
Abyss Jewel added, reload it

Does anyone know off the top of their head what the current account and character name length limitations are?
23 for characters, 31 for accounts
yeah there are two of us
Chris Wilson says: "We're looking to increase our headcount over the next year from 114 full time employees to around 130.
no new members?
@gritty olive No Jewel sockets showing under items, is it the tree that makes it hard to implement?
They're in the normal item slots I'd think he just forgot them
I'm confused at the question @versed ginkgo
Sockets are in visual form only, the gems will be put in there at some point once I do the parsing for that
@compact isle did you code your own tooltips, full disclosure: I haven't looked at the code yet
which tooltips are these?
forum / item tooltips


