boy0001 / FastAsyncWorldedit

Blazingly fast world manipulation for artists, large networks and developers: https://www.spigotmc.org/resources/13932/
GNU General Public License v3.0
311 stars 225 forks source link

Infinite //stack #181

Closed andrewgazelka closed 8 years ago

andrewgazelka commented 8 years ago

I think the title explains it. Players can //stack infinitely without restrictions. ex: //stack 9999999 up and prevent any other WorldEdits.

Version: 3.5.1 (this is the latest version as of 7/6/2015) Configuration:

# These first 4 aren't configurable
issues: "https://github.com/boy0001/FastAsyncWorldedit/issues"
wiki: "https://github.com/boy0001/FastAsyncWorldedit/wiki/"
version: "1.8.8"
platform: "bukkit"
# Send anonymous usage statistics to MCStats.org
metrics: true
# If fawe should try to prevent server crashes
crash-mitigation: true
# Set true to enable WorldEdit restrictions per region (e.g. PlotSquared or WorldGuard).
# To be allowed to WorldEdit in a region, users need the appropriate
# fawe.<plugin>  permission. See the Permissions page for supported region plugins.
region-restrictions: true
# FAWE will start cancelling non-admin edits if used-memory % exceeds
# this value.  Effects anyone who doesn't have bypass enabled
# (e.g.  /wea , or fastmode //fast , or fawe.bypass permission ).
max-memory-percent: 95

lighting:
  # If chunk lighting should be done asynchronously
  async: true
  # If all lighting should be fixed in a chunk that is edited
  fix-all: true

clipboard:
  use-disk: false
  delete-after-days: 1

# Generic tick limiter (not necessarily WorldEdit related, but still useful)
tick-limiter:
  # Max physics per tick
  physics: 500000
  # Max item spawns per tick
  items: 1337

extent:
  # Don't bug console when these plugins slow down WorldEdit operations
  allowed-plugins: 
  - "BlockLimit"
  - "SchematicShop"
  # Disable the messages completely
  debug: true

web:
  # I am already hosting a web interface for you here
  url: "http://empcraft.com/fawe/"

queue:
  # If no blocks from completed edits are queued, and if the global queue has more available 
  # chunks to place from still-processing edits than the target size setting, it will begin
  # placing available blocks from edits still in the preprocessing stage.
  target-size: 64
  # This should equal the number of processors you have
  parallel-threads: 1
  # The time in milliseconds that the global queue can be idle before it is forced to start
  # on edits which are still in the preprocessing stage.
  max-wait-ms: 1000
  # Increase or decrease queue intensity (0 = balance of performance / stability)
  # Should not need to change this.  Increasing it (positive value) too high 
  # will probably cause the server to freeze, and decreasing it (negative value)
  # may reduce load on the server but should not be necessary.
  extra-time-ms: 0
  # Discard edits which have been idle for a certain amount of time (ms) (e.g. a plugin creates
  # an EditSession but never does anything with it).
  discard-after-ms: 60000
  progress:
    # Display constant titles about the progress of a user's edit
    display: false
    # How often edit progress is displayed
    interval: 1

history:
  # Should history be saved on disk:
  #  - Frees up a lot of memory
  #  - Persists restarts
  #  - Unlimited undo
  #  - Enables the rollback command
  use-disk: false
  # Record history with dispatching:
  #  - Faster as it avoids duplicate block checks
  #  - Worse compression since dispatch order is different
  combine-stages: false
  # Higher compression reduces the size of history at the expense of CPU
  #0 = Uncompressed byte array
  #1 = 1 pass fast compressor (default)
  #2 = 2 x fast
  #3 = 3 x fast
  #4 = 1 x medium, 1 x fast
  #5 = 1 x medium, 2 x fast
  #6 = 1 x medium, 3 x fast
  #7 = 1 x high, 1 x medium, 1 x fast
  #8 = 1 x high, 1 x medium, 2 x fast
  #9 = 1 x high, 1 x medium, 3 x fast
  # NOTE: If using disk, do some compression as smaller files save faster
  compression-level: 1
  # The buffer size for compression:
  #  - Larger = better ratio but uses more upfront memory
  buffer-size: 531441
  # The maximum time in milliseconds to wait for a chunk to load for an edit.
  #  (50ms = 1 server tick, 0 = Fastest).
  #  The default value of 100 should be safe for most cases.
  # 
  # Actions which require loaded chunks (e.g. copy) which do not load in time
  #  will use the last chunk as filler, which may appear as bands of duplicated blocks.
  # Actions usually wait about 25-50ms for the chunk to load, more if the server is lagging.
  # A value of 100ms does not force it to wait 100ms if the chunk loads in 10ms.
  # 
  # This value is a timeout in case a chunk is never going to load (for whatever odd reason).
  # If the action times out, the operation continues by using the previous chunk as filler,
  #  and displaying an error message.  In this case, either copy a smaller section,
  #  or increase chunk-wait-ms.
  # A value of 0 is faster simply because it doesn't bother loading the chunks or waiting.
  chunk-wait-ms: 100
  # Delete history on disk after a number of days
  delete-after-days: 7
  # Delete history in memory on logout (does not effect disk)
  delete-on-logout: true
  # If history should be enabled by default for plugins using WorldEdit:
  #  - It is faster to have disabled
  #  - Use of the FAWE API will not be effected
  enable-for-console: true

# The "default" limit group affects those without a specific limit permission.
# To grant someone different limits, copy the default limits group
# and give it a different name (e.g. newbie). Then give the user the limit 
# permission node with that limit name (e.g. fawe.limit.newbie  )
limits:
  default:
    # Max number of block changes (e.g. by `//set stone`).
    max-changes: 50000000
    # Max number of blocks checked (e.g. `//count stone` which doesn't change blocks)
    max-checks: 50000000
    # Number of times a change can fail (e.g. if the player can't access that region)
    max-fails: 50000000
    # Allowed brush iterations (e.g. `//brush smooth`)
    max-iterations: 1000
    # Max allowed entities (e.g. cows)
    max-entities: 1337
    # Blockstates include Banner, Beacon, BrewingStand, Chest, CommandBlock, 
    # CreatureSpawner, Dispenser, Dropper, EndGateway, Furnace, Hopper, Jukebox, 
    # NoteBlock, Sign, Skull, Structure
    max-blockstates: 1337
    # Maximum size of the player's history in Megabytes
    max-history-mb: 20
dordsor21 commented 8 years ago

unless a //stack exceeds the block limit in the config then it shouldn't be a problem

andrewgazelka commented 8 years ago

@dordsor21 , the problem is it does not trigger when it exceeds the block limit.

dordsor21 commented 8 years ago

the stacks go above 50,000,000 blocks?

andrewgazelka commented 8 years ago

@dordsor21 yes, they can go to unlimited blocks. Even if max-changes: 50 you can still do //stack up 99999999999999999999

dordsor21 commented 8 years ago

okay, was just clarifying^^

boy0001 commented 8 years ago

Can't replicate. Make sure you don't have region bypass enabled.