Closed un0btanium closed 5 years ago
Hey.
I'm not sure what the ingame wording is, but im guessing its "2.5% per second", and 13/5 works out to 2.6, so that seems like a rounding issue in the client.
The entries in the game are hashed, most of them are reversed, but not all of them, and the ones that are not reversed are outputted like that. They should only change when riot changes their name in the game (almost never)
I dont know how the game uses the data, but its whats in the game files, so it should be accurate. atleast for the tooltip.
Thanks for your fast response!
Oh, yeah, that makes sense! I failed to see that connection. Weird choice to sum the percentage up across the time. Will make it slightly more difficult. Oh well better than nothing. (Maybe they always round down to the next .5 step to get the accual value)
Ok, thats good news. I dont have a lot of experience with hashes themselves, but would it be possible - ignoring the fact that first you would have to identify that it is just gibberish - to not reverse those ones to get the accual name? Detection might accually be easy if they only consist of upper case letters and numbers, because normal names would contain lower case letters as well.
Alright, I thought might have some insight in how the data is used, since I dont know how this parser works and how much it allows you to see "inside" the whole game and its inner works. But even if it is just the tooltip, this will already be very valuable. Some of the changes werent in the patch notes and some information are nowhere to be found at all (like the chance on the disarm, silence and shrink items).
Im not quite sure what you mean with not reverse those ones to get the accual name
.
The hashes are just HEX encoded numbers, since thats more convenient. Upper/lowercase doesnt matter, since everything is lowercase in the hashing anyways See here if you wanna see how its done: https://github.com/stelar7/lol-parser/blob/master/src/main/java/no/stelar7/cdragon/util/handlers/HashHandler.java#L118
Like I said I have no idea how hashes work, so bare with me :D
not reverse those ones to get the accual name
With my limited knowledge, I thought that the accual variable name would still be there, so I was hoping to get the accual variable name the riot developer gave the value. So just for clarification: Are those names like "6DF27940" impossible to convert into names like "BurnDuration"?
Yea, its impossible.
Ive built up a list of "correct" values here; https://github.com/stelar7/lol-parser/blob/master/src/main/resources/hashes/bin/binhash.json
But since there are "only" about 4294967295 possible values, and because hashes might be the same for different words, its hard to just bruteforce a correct answer
Oh, now I understand. You manually have to translate all those hash values into an accual string and some you cant translate because they appear multiple times in different contexts. Bummer. I guess I can just create my own list of translations based on champion or item context.
Thank you for explaining it to me! May I ask for which purpose you have build this parser? This seems like a very large and long-term project. What are you doing with the extracted data?
Hello,
I just stumbled upon your project while trying to find data on TFT champions and items. This is wonderful, well done!
I have generated the TFT data file and looking through I found a few things that I would like clarification about:
1) Looking at the Red Buff item, it says Burn Percent is 13.0, but on wiki and ingame it says its only 2.5%. Is there some value type not correct converted or why does the number not correlate? Weirdly enough, in other cases, the percentage values seem to be correct.
2) Furthermore, some names start with a cryptic name, e.g. "6DF27940". Is that the offical internal name or some kind of memory value? Does that name change between patches or is it always consistent? Because if it is consistent I could just map it to a proper string myself.
3) In general, how reliable are these information? Is it the data that is used ingame by the game logic when the game is play? Or is it only used for the tooltip and description text?
Thanks in advance. Looking forward using this more often :D