[Bug report] Improper sponge behavior

Discussion in 'Help & Support / Errors & Bugs' started by 314, Sep 14, 2017.

  1. 314

    314 Irratioπal President, former ServerAdmin
    President ⛰️⛰️ Ex-President ⚒️⚒️ Premium Upgrade

    Joined:
    Apr 1, 2014
    Messages:
    6,963
    Trophy Points:
    87,660
    EcoDollars:
    $27,000,000
    Ratings:
    +4,866
    Minecraft Username:
    314.

    Brief Description:
    Sponges display a mix of their custom ECC behavior and their normal vanilla Minecraft behavior if they touch water. The custom behavior previously used to completely override vanilla behavior, but apparently this is no longer the case.

    Extensive Description:
    [​IMG]
    The white tiles of this drawing illustrate the sponge behavior. ECC uses a plugin that forces sponges to immediately clear a 9x9x9 area centered around the sponge; this used to override the vanilla sponge's (inferior) abilities that were added in 1.8.
    A vanilla sponge reaches further than a plugin sponge (the red tiles in the drawing), but neighboring water can flow back into this area.

    I decided to demonstrate it at my /home sponge. Jamie/andrew, feel free to use it if you want to test the bug.

    [​IMG]
    I created two equal bodies of water, then marked two locations with concrete. The sponges were then placed on top of those blocks - the left sponge touches the water, the right sponge doesn't.
    [​IMG]
    The sponge that didn't touch the water worked properly - a 9x9 area has been cleared. The aforementioned Wiki quote said "The absorption only propagates from water to water and won't 'jump over' non-water blocks (including air)", which means that vanilla behavior does not apply in this case.

    The left sponge, however, mixed both behaviors:
    • The square's four corner blocks have been cleared; those are only accessible by the plugin sponge and not by the vanilla sponge (due to their taxicab distance of 8).
    • The 9 water blocks at the bottom (taxicab distance 5-7) have been cleared; those are only accessible by the vanilla sponge. This area would flood again if there were any neighboring water blocks; it isn't protected from water spread like the 9x9 area.
    It is interesting to note that the top part (negative X direction, i.e. west) has not been affected. This might be related to the "won't absorb more than 65 blocks of water" property from the Wiki quote.
    When placed in a full 15x15 area of water, the sponge appears to favor the blocks to to the east over the blocks to the west for unknown reasons; I haven't tested north-south behavior yet. The best way to analyze this behavior is in one block deep water, most likely due to the aforementioned water absorption limit of 65 blocks.

    How many times did you recreate this bug?:
    Far too many times (10+).

    Result:
    An amalgamation of custom and vanilla behavior, as explained above. Sponges are not limited to the 9x9x9 area.

    Expected Result:
    The custom behavior should completely override the vanilla properties. This used to be the case, but it changed at some point, most likely during or sometime after the 1.12 upgrade.

    Evidence:
    See above.

    TL;DR:
    Sponge behavior is a mess.
     
    • Like Like x 1
    • Winner Winner x 1
    • Useful Useful x 1
    • Optimistic Optimistic x 1
    • List
  2. andrewkm

    Founder Premium Upgrade

    Joined:
    Apr 5, 2011
    Messages:
    20,370
    Trophy Points:
    102,160
    Ratings:
    +15,065
    @JamieSinn please check this out.

    @314 for sponges we use the following:
    https://github.com/sk89q/worldguard
    With the following settings:
    Code:
    simulation:
        sponge:
            enable: true
            radius: 5
            redstone: false
    If you maybe want to check that out to see if you can find the issue would be great.

    You can also post the issue here to see if the developer can acknowledge the issue himself:
    http://dev.enginehub.org/youtrack/dashboard

    Or perhaps it's something wrong on our end. Just have so much going on it's a little hard to dedicate time to sponges specifically. But see if you guys can find something @JamieSinn @314
     
  3. JamieSinn

    JamieSinn Retired Lead Administrator/Developer
    Builder ⛰️ Ex-Tycoon ⚜️⚜️⚜️ Premium Upgrade

    Joined:
    Jun 4, 2011
    Messages:
    5,517
    Trophy Points:
    78,090
    Gender:
    Male
    Ratings:
    +4,588
    Currently, nothing custom impacting this, looks like a weird mix/override.

    Any who, not an issue that causes negative issues. Feel free to attempt fixes @314
     
  4. 314

    314 Irratioπal President, former ServerAdmin
    President ⛰️⛰️ Ex-President ⚒️⚒️ Premium Upgrade

    Joined:
    Apr 1, 2014
    Messages:
    6,963
    Trophy Points:
    87,660
    EcoDollars:
    $27,000,000
    Ratings:
    +4,866
    I wanted to add this earlier today, then forgot:
    I managed to reproduce this error on a clean 1.12.1 server with WG 6.2.1 (84bc322), so it appears to be related to WG and not specifically ECC.

    Allowing me to experiment with fixes sounds like a great way to either cause more bugs or completely break the plugin... :p
     
    • Optimistic Optimistic x 1
    • List