IntellectualSites / IntellectualSites/PlotSquared

You can break blocks from the road while merging is in progress

Open
#3,056 9 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Approved Bug
Dominant language
Java
Stars
653
Forks
975
Avg merge
2m
Merged PRs (30d)
6

Description

Server Implementation

Paper

Server Version

1.16.5

Describe the bug

Copy of https://issues.intellectualsites.com/issue/PS-169 by Diranus.

When you merge with "/p merge", the plot owner and trusted players can build/break blocks inside the road between.
It seems like the plot area is merged internally before the roads are removed, resulting in break/build permissions in road not intended for building/breaking.

To Reproduce
  • Player A claims at least two adjacent plots
  • Player A trusts Player B on them.
  • Player B is standing on one of the plot and attempts to build/break blocks in the road between
  • Player A invokes the merge process by "/p merge"
  • For a short period of time, player B can break or build on the road, until the road disappears by the merging process.

The larger the merged plot is, the longer that period is.

Expected behaviour
Screenshots / Videos

grafik

Error log (if applicable)

The only console output is that player A typed "/p merge"

Plot Debugpaste
PlotSquared Version

5.13.6

Checklist
Anything else?

It allows some duping which harms multiplayer worlds.
Especially if the plot borders, walls or the road itself is out of valueful materials (for example, a beacon border or a road out of some value stone).
In our servers, strong fast break potion effects can be activated by the players which amplifies this issue (you can break multiple blocks out of the road in the short time between /p merge and completion of merging process).

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the /p merge command and trace the merge process described in the reproduction steps. Verify when plot permissions begin covering the road and when the road is removed. Done means trusted players cannot build or break road blocks at any point while adjacent plots are merging, including for larger merged plots.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
security
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.