HypixelDev / PublicAPI

Official Java implementation of the Hypixel Public API.
https://api.hypixel.net
MIT License
531 stars 151 forks source link

Ability to make stats private so that the API cannot retrieve them #339

Closed brightestpixel closed 3 years ago

brightestpixel commented 3 years ago

Stats of other players are used maliciously by many people on Hypixel. For example, if someone has a high winstreak in Bedwars, it will not be long before other players use a website that uses this API (such as plancke.io) in order to foil their winstreak. It would be a welcome feature if players who have this issue could choose to make their stats not retrievable by the API, ensuring that people and hackers cannot have access to stats like winstreak, FKDR, etc. By default, however, all stats would be public, like they are now.

This feature would make it much harder for players to target or use cheats to end winstreaks in various games. However, groups may just snipe players who choose to make their stats private (figuring they are hiding stats because of a high winstreak). Providing other reasons for players to make their stats private (other than just hiding winstreak) would alleviate this issue because players and hackers need to be fairly sure that someone is hiding their winstreak before they can take action.

Furthermore, the ability to choose which stats are public and private would be a useful feature. Exactly how players would choose which stats to make public or private would be related more to UI (in-game or on the website), not directly to the API, but nevertheless it would be a valuable feature to have. Lastly, the ability to make it so only friends can view your stats would be nice as well. Again, this feature would not be easy to implement, especially because it would require some sort of authentication in the API. With this said, even just the feature of being able to "turn off" stat viewing by all other players would be beneficial to many Hypixel players.

In conclusion, I really like plancke.io and the ability to view other players' stats, but I recognize that some people use it to target other players and even use hacks to defeat good players. Therefore, I think that the ability to stop other players from viewing one's stats through the Hypixel API would be extremely useful in many cases.

mdashlw commented 3 years ago

This is a horrible idea. For the same reason as hiding any specific stats: it barely solves the original issue that affects 5 people and creates more issues for everyone else. Staff can already hide all their stats and everything, and this is understandable, because I know the exact reason why this option was added for them. But doing that because of bedwars target is not worth it at all. Even youtubers didn't get such ability, only staff, so I highly doubt that anything like this will happen for normal players.

robere2 commented 3 years ago

creates more issues for everyone else.

What sort of issues does it create for others?

MartinNemi03 commented 3 years ago

From that perspective, why don't we also disable leaderboards so that you can't snipe people on leaderboards? I personally agree that not all API stats should be able to be disabled, but if they really want, they could disable winstreaks, but that's mostly it.

brightestpixel commented 3 years ago

Yeah, the primary stat that most snipers look at is winstreak (or possibly FKDR). A lot of good Bedwars players have to deal with hackers or targeters in games, and I'm just hoping to find some sort of solution. I also had no idea that staff can hide their stats, which is very interesting to me. As I said up above, snipers would just target people who hide their stats if the only people who hide their stats are people with winstreaks, so some other reason for hiding stats would be needed so that not all people who hide stats have winstreaks. (That was a wordy sentence lolol) So far, I can't think of any reason why someone would want to hide their stats other than avoiding sniping, and I certainly don't want to force anyone to hide their stats if they don't want to. I would agree that this requires some more thought, and I'm curious if any of the developers have any opinions/thoughts on this.

mdashlw commented 3 years ago

From that perspective, why don't we also disable leaderboards so that you can't snipe people on leaderboards? I personally agree that not all API stats should be able to be disabled, but if they really want, they could disable winstreaks, but that's mostly it.

You can't disable leaderboards. Also hiding winstreak isn't good for the same reason as this issue: it barely solves the problem (you still will be able to calculate winstreak)

mdashlw commented 3 years ago

Bedwars sniping problem should be solved without any technical changes in the public api, because hiding specific stats is useless, but hiding all stats is not worth it. This is gonna be kinda solved because of Microsoft migration, when alt shops will be gone.

brightestpixel commented 3 years ago

As a Bedwars player who enjoys trying to get winstreaks, I would hide my stats (including ways to track winstreak like wins, final kills, etc.) so that I cannot be sniped if it were possible. As many people have mentioned though, the ability to hide stats may not be effective in preventing snipers from realizing that I am probably hiding my stats because of my winstreak. And it is true that sniping (especially by hacker groups), may soon be a thing of the past with Microsoft account migration.

If I want to make this idea helpful/useful, I need to do some more thinking. For now, if no one else has any other thoughts, I'll probably close this issue.