Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Forge 40.1.22 1.18.2+ has extended player reach #9309

Closed
SamB440 opened this issue Jan 14, 2023 · 9 comments · Fixed by #9361
Closed

Forge 40.1.22 1.18.2+ has extended player reach #9309

SamB440 opened this issue Jan 14, 2023 · 9 comments · Fixed by #9361
Labels
1.18 1.19 Bug This request reports or fixes a new or existing bug. Confirmed This request has been verified to be factually correct by at least one member of the team.

Comments

@SamB440
Copy link

SamB440 commented Jan 14, 2023

Minecraft Version: 1.19.3

Forge Version: 44.1.5

Logs: N/A

Steps to Reproduce:

  1. Install any version of Forge 40.1.22 1.18.2+.
  2. Two easy options: Right click an armourstand that has items on it from 4-5 blocks. This will work and give you the item. OR: Spawn a villager and right click it. This is easier to see in my opinion.
  3. You may also test left click reach, but this doesn't seem to be affected as badly. It is easier to test right-click reach visually.

Description of issue:
Any version of Forge 40.1.22 1.18.2+ has inbuilt reach hacks up to almost 5 blocks for right-click, around 3.3 for left-click. This is caused by the PR #8478.

I have tested this both on servers and singleplayer worlds. This is extremely bad as it flags anticheats (obviously).

I am aware of #9013 which potentially fixes this problem, however I believe 1.18.2 is still supported and that is only for 1.19, and the PR has been open for a long time now for such a big problem. This issue also raises awareness of the problem and tracks it, it took me a while to understand what was going on and that I wasn't insane.

It would be nice to see this problem solved on both 1.18 and 1.19 and as quickly as possible.

Edit: Video proving left-click reach is affected: https://youtu.be/GQcVjAxb1uE

@SamB440 SamB440 added the Triage This request requires the active attention of the Triage Team. Requires labelling or reviews. label Jan 14, 2023
@Matyrobbrt Matyrobbrt added Bug This request reports or fixes a new or existing bug. 1.18 1.19 labels Jan 19, 2023
@Shadows-of-Fire
Copy link
Contributor

The attack range increase is a bug as described by #9013 and will be addressed by that, however the increased entity reach (of 4.5) is a side effect of the implementation, and will not be changing. Vanilla allows the server to process interactions within that range, so it wouldn't really classify as a hack unless it was able to bypass some server security measure.

@KaspianDev
Copy link

Anything that vanilla cannot do is and should be considered unfair advantage.

@StealWonders
Copy link

A mod loader should not deliberately affect vanilla behavior in such a manner that gameplay values are increased / decreased. A prevention / security system should not be required to use Forge. As Forge stands right now it should be classified as a cheat and therefor banned from use on any pvp combat oriented server which is very unfortunate.

@Shadows-of-Fire
Copy link
Contributor

Servers can perform their own checks and deny the interaction. If they are denying the interactions already for security reasons then it's really a non issue, as these "invalid" interactions will be discarded.

@KaspianDev
Copy link

Servers can perform their own checks and deny the interaction. If they are denying the interactions already for security reasons then it's really a non issue, as these "invalid" interactions will be discarded.

Did you know that's literally cheating?

No, I shouldn't need an anticheat for forge. If I do forge is basically a hacked client.
Also you are risking players using forge getting banned, because server's will not just "discard" the interaction but ban the player.

@SamB440
Copy link
Author

SamB440 commented Feb 25, 2023

Servers can perform their own checks and deny the interaction. If they are denying the interactions already for security reasons then it's really a non issue, as these "invalid" interactions will be discarded.

And I will ban you for reach hacks. How will I know whether you're using a cheat mod / client or just Forge? But I suppose that doesn't matter because I'll check your client brand / plugin messages and check to see if it happens when you right click, and know you're just using inbuilt reach hacks, so that's fine...

Many servers don't have a 'perfect' anticheat that blocks anything above 3, as you have to consider lag compensation and it takes a lot of work. This is why vanilla servers allow up to 5 block interaction range, because it's allowing that leniency for lag, not that it considers it legal.


Vanilla allows the server to process interactions within that range, so it wouldn't really classify as a hack

By this definition all hacks increasing interaction range are legitimate because the vanilla server allows up to 5 blocks.

Servers can perform their own checks and deny the interaction. If they are denying the interactions already for security reasons then it's really a non issue

This is how all cheats work. They work until you block them.


It is good the attack range will be fixed. That's the primary issue here. But it is disappointing the entity interact range won't be, and I think the best solutions if this is not fixed are:
  • As you said, cancel any interaction above 3 and don't flag for right click reach if the player is on forge 1.18+
  • Ban forge 1.18+ from joining your server

Forge should not be considered legitimate, which is fine as Forge is not vanilla and is intended to mod the game. But it is annoying for people who used Forge legitimately with legitimate, useful mods but now can't anymore, just because Forge 1.18.2+ has this problem.

Perhaps you think the issue is being overstated and dramatised, but I consider something that has worked fine for years that many people use now deciding to break vanilla compatibility, especially in terms of a form of reach, a serious problem.

@LexManos
Copy link
Member

LexManos commented Feb 25, 2023

Jesus christ. Shadows shut the hell up. Your shit was supposed to not break vanilla values. I specifically went and tested at all those magic numbers stayed the same when dealing with your pr. Stop trying to defend your broken code as something intentional.

The other two get you knickers untwisted. 99% of the community doesnt give a crap if they can reach 3.5 blocks or 3.51 blocks. Its unintentional and if a valid simple reproduction case can be provided as weve asked then someone will take a look at it.

@SamB440
Copy link
Author

SamB440 commented Feb 25, 2023

Its unintentional and if a valid simple reproduction case can be provided as weve asked then someone will take a look at it.

I linked a video showing how to reproduce it. Install forge, you have reach. https://youtu.be/GQcVjAxb1uE

You can use GrimAC, an open source anticheat, to test this easily. https://github.com/GrimAnticheat/Grim

99% of the community doesnt give a crap if they can reach 3.5 blocks or 3.51 blocks

Disagree. Extra reach affects all aspects of the game.

You can reach 3 blocks in vanilla. You can hit almost 4 blocks with Forge on left-click currently and almost 5 on right-click.

@MWHunter
Copy link

+1 for fixing this. I've told servers to ban off the reach check due to it being one of the most stable checks, so legitimate players will be getting banned due to this.

@MinecraftForge MinecraftForge deleted a comment from KaspianDev Feb 25, 2023
@Shadows-of-Fire Shadows-of-Fire added the Confirmed This request has been verified to be factually correct by at least one member of the team. label Feb 25, 2023
@autoforge autoforge bot removed the Triage This request requires the active attention of the Triage Team. Requires labelling or reviews. label Mar 30, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
1.18 1.19 Bug This request reports or fixes a new or existing bug. Confirmed This request has been verified to be factually correct by at least one member of the team.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

7 participants