NoCheatPlus / Issues

Issues managment for the NoCheatPlus project.
13 stars 9 forks source link

Fastcraft+ Plugin causes FastClick Event #449

Open MrSpock78 opened 7 years ago

MrSpock78 commented 7 years ago

Short description of the issue.

I want to allow the usage of FastCraft+ on my Server, but still deny mods like InventoryTweaks or other fastclick events. So is it possible to exclude a Plugin like FastCraft+ from Inventory-Checks?

Complete output of the ncp version command (please prefer text here).

---- Version information ----

Server

git-Paper-1102 ~MC: 1.11.2~ detected: 1.11.2

NoCheatPlus

Plugin: 3.15.2-SNAPSHOT-sMD5NET-b1111 MCAccess: 1.11-1.11.2 / Spigot-CB-1.11_R1 Features: blocks: BlocksMC1_4 | BlocksMC1_5 | BlocksMC1_6_1 | BlocksMC1_7_2 | BlocksMC1_8 | BlocksMC1_9 | BlocksMC1_10 | BlocksMC1_11 checks: FastConsume | Gutenberg | HotFixFallingBlockPortalEnter | AttackFrequency | FlyingFrequency | KeepAliveFrequency defaults: pvpKnockBackVelocity packet-listeners: UseEntityAdapter | MovingFlying | OutgoingPosition | KeepAliveAdapter | SoundDistance Hooks: AllViolations~NCP~ 1.0 | mcMMO~cncp~ 2.3

Related Plugins

CompatNoCheatPlus v6.6.3-SNAPSHOT-sMD5NET-b87 | ProtocolLib v4.2.2-SNAPSHOT-b357 | ProtocolSupport v4.26.dev

How to reproduce the issue (is it random / always happens / side conditions)?

Craft a lot of Items/Blocks via FastCraft+. It is designed to craft items via fastclicks in a Chest-GUI.

Have you made any (noteworthy) changes to the default configuration of NCP?

Tested with default-config.

Do you run any other special plugins that affect game mechanics next to NC+ (adding skills, machines, adding/changing blocks, other anti cheating)?

FastCraft+: https://www.spigotmc.org/resources/fastcraft.20544/

Provide additional information, such as error/debug/violation logs. (For reproducible issues with moving consider: https://github.com/NoCheatPlus/Docs/wiki/Debugging#on-the-fly-debug-output-for-individual-players) Use GitHub gists or http://pastebin.com/ or similar for huge logs, or attach a (zip-) file here. For image uploads, please prefer a site that allows viewing without JavaScript, you can upload file attachments for issues right here.

asofold commented 7 years ago

I couldn't find any useful indicators for what they're doing technically, skimming through the source code of Fastcraft. It probably is necessary to get in touch with the developer to resolve this issue.

E.g.

MrSpock78 commented 7 years ago

Is it possible implement ignoring fastclicks for config-defined names of chests? Other plugins with chest-GUIs could also cause false-positives?

asofold commented 7 years ago

I'm not sure if that would help - if i understand right, fastcraft will provide an inventory with possibly results of crafting, and if the players clicks on a thing in there, it'll get crafted.

I don't know what goes wrong here, one hypothesis is, that fastcraft emulates the clicking necessary to obtain the result - this would be within the player inventory, so ignoring specially named inventories wouldn't get us anywhere - still if the FastcRaft part is specially named, and the player clicks on a result, i could let NCP ignore the next so and so clicks within the tick.

The question is what happens here... i wasn't able to see it from looking at their GitHub repository (more or less shortly).

RoboMWM commented 7 years ago

IIrc, the new FastCraft+ just takes and places items into the player's inventory, and doesn't emulate any crafting (the old one probably didn't either, since players have told me they didn't get any crafting-related achievements).

The fastclick is likely due to players rapidly clicking an item to craft many times. They're likely clicking so fast that they don't even notice that some of their clicks are canceled. (One of my players would do this and I'd always wonder if they were thinking they were lagging out - they never noticed. And I really had to click quickly to trigger the check.) So this issue is more of an annoyance to admins :P

As for why they can click so fast - since no dragging is needed, nor moving the cursor (provided the recipes don't change), it's basically the same thing as clicking a stationary button as fast as you can.


Possible suggestion is to check for fastclicking amongst differing slots/ignore if it's the same slot clicked.

asofold commented 7 years ago

NCP doesn't have any sort of "difficulty estimation" built in, e.g. same slot vs distance/similar.

If it's really that, we could just count clicking the same slot repeatedly with a lower weight, so you can do that faster.

RoboMWM commented 7 years ago

If it's really that, we could just count clicking the same slot repeatedly with a lower weight, so you can do that faster.

Sounds fine to me. And yea, that's basically what it was for me.