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

#mask pattern does not work in wall "filling" #4311

Open
0x484 opened this issue Feb 2, 2024 · 1 comment
Open

#mask pattern does not work in wall "filling" #4311

0x484 opened this issue Feb 2, 2024 · 1 comment
Labels
Enhancement New feature or request

Comments

@0x484
Copy link

0x484 commented Feb 2, 2024

Server Implementation

Paper

Server Version

1.20

Describe the bug

Using the pattern "#mask[=y>=-64&&y<=63][stone][grass_block]" in worlds.yml for wall filling does not work. But it does work with the command: /p set wall #mask[=y>=-64&&y<=63][stone][grass_block]

To Reproduce

  1. Create any world.yml
  2. Change worlds.yml to:
worlds:
  test:
    plot:
      height: 64
      size: 45
      filling: dirt
      floor: grass_block
      bedrock: true
      biome: minecraft:plains
      sign_material: SPRUCE_WALL_SIGN
      auto_merge: false
      create_signs: true
    wall:
      place_top_block: true
      block: stone_slab
      block_claimed: deepslate_brick_slab
      filling: '#mask[=y>=-64&&y<=63][stone][grass_block]'
      height: 64
    road:
      width: 9
      height: 64
      block: stone
      flags: {}
    home:
      nonmembers: side
      default: side
    schematic:
      specify_on_claim: false
      on_claim: false
      file: 'null'
      schematics: []
    chat:
      forced: false
      enabled: true
    economy:
      prices:
        merge: 100
        sell: 0
        claim: 100
      use: true
    world:
      max_gen_height: 319
      max_height: 320
      gamemode: survival
      min_gen_height: -64
      min_height: -63
      border: false
      border_size: 1
    event:
      spawn:
        egg: true
        breeding: false
        custom: true
    natural_mob_spawning: false
    mob_spawner_spawning: true
    flags: {}
    misc_spawn_unowned: false```

3. Startup error in console "Failed to parse pattern"

### Expected behaviour

The pattern should also work in the worlds.yml, not only with a command.
(It should fill everything up with stone, except for the block at height 64, which should be grass_block)

### Screenshots / Videos

_No response_

### Error log (if applicable)

[20:52:46 ERROR]: [PlotSquared/ClassicPlotWorld] Failed to parse pattern '#mask[=y>=-64&&y<=63][stone][grass_block]', check your worlds.yml
[20:52:46 ERROR]: [PlotSquared/ClassicPlotWorld] Falling back to minecraft:stone

### Plot Debugpaste

https://athion.net/ISPaster/paste/view/eac02ef7ea36477a95c8e0dc96a0dec7

### PlotSquared Version

7.3.2-Premium

### Checklist

- [X] I have included a Plot debugpaste.
- [X] I am using the newest build from https://www.spigotmc.org/resources/77506/ and the issue still persists.

### Anything else?

_No response_
@0x484 0x484 added the Requires Testing This is a new issue which needs to be approved before labeled with "bug" label Feb 2, 2024
@SirYwell
Copy link
Member

SirYwell commented Feb 3, 2024

The problem comes down to the expression requiring a world, but PlotSquared tries to parse it without world context. Fixing it would potentially require some major breaking changes and redesigns of core concepts, so this would rather be an enhancement request than a bug.

@SirYwell SirYwell added Enhancement New feature or request and removed Requires Testing This is a new issue which needs to be approved before labeled with "bug" labels Feb 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants