Inactive [FIX/MECH] Stream Remover v1.03 - Remove those annoying water and lava streams! [2038]

Discussion in 'Inactive/Unsupported Plugins' started by bergerkiller, Oct 15, 2011.

  1. Offline

    bergerkiller

    Description

    Pretty much everyone ran into it in the past: You made a nice river, accidentally placed a dirt block on the sides, and removed it again. There it is...an ugly water stream. Sometimes forming hundrets at a time, it takes ages to fix them. With this plugin running, this will never happen. Annoying water streams belong to the past! :)
    You can also do the same for lava streams, but you do need to enable it in the config.yml. (since this introduces infinite lava streams, could be a bad idea on your server)

    Works for all RBs since cb#1060 (tested)

    Important: It prevents the FORMATION of these streams, it provides no commands to remove streams already existing. However, removing them does become easier.


    Configuration
    You can set 'allowLava' in the config.yml to true to allow the (infinite) lava stream fixer.

    Media:


    Download links and other links
    Download StreamRemover from GitHub
    View source code on GitHub
    Bukkit dev page

    Changelog
    29-10-2011 - Updated to v1.02
    - Made it use the new File configuration system

    19-10-2011 - Justice day - Updated to v1.01
    - Fixed gigantic water oceans from forming

    15-10-2011 - Released version 1.00
     
  2. Offline

    bergerkiller

    @Ranakastrasz lol I never imagined anything ever got to be added to it, thanks for proving me wrong :)
    I see, I'll look into it. And atm it simply looks for water source blocks surrounding the (now) air block, and turns this block to water based on that.
     
  3. Offline

    Ranakastrasz

    Ah, Well, I suggest it at least requires fluid flow blocks, otherwise I imagine undesirable behavior might occur otherwise...
     
  4. Offline

    bergerkiller

    @Ranakastrasz ye it depends on onBlockFromTo, which is for flowing. (and yes, it caused an ocean of water in 1.00 lol)
     
  5. Offline

    SuperrNerd

    I don't know anything about plugins, but last I heard: for a flow block to turn to a source block, it needed to be surrounded by two other source blocks AND have a solid block underneath it.

    Would it not be simpler to include source water blocks in the check for solid blocks underneath?

    An example, in PSEUDOCODE:
    Show Spoiler

    Code:
    With(water_flow):
    // check x/z axis for block type
    if blocktype(x-1,y,z)==water_source
    or blocktype(x+1,y,z)==water_source
    or blocktype(x,y,z-1)==water_source
    or blocktype(x,y,z+1)==water_source
    {
    // check underneath for block type
    if blocktype(x,y-1,z)==any_solid
    or blocktype(x,y-1,z)==water_source
    {
    // make this flow block a source block
    blocktype(x,y,z)==water_source
    }
    }

    That way, it'd fix the first problems (making a river), as it would check the underneath for a source block (which there would be) and turn to source.

    Also, how does the normal water mechanics not fill in the holes at the bottom of the ocean (unless you're digging deep holes)

    If you already do this: IGNORE THIS REPLY.
     
  6. Offline

    Ranakastrasz

    I wrote, a while back, a fix for singleplayer for that effect, and it was just extending the valid blocks to include water sources. The original code was basically like what you have, except checking solid blocks, and ignoring water (and glass). It did basically that, except also checked for 4 blocks in the 3x3x1 area above the flow block, which filled in the holes nicely (unless they were really skinny and deep, which was intentional)

    I imagine that is how this mod already works.

    The normal water mechanics fill the holes at the bottom of the ocean... The same way that, in vanilla, they fill them in at the top. They place flow blocks there, giving you currents, which while not ugly, will still try to drown you (irritating when I go clay diving)
     
  7. Offline

    Nori_Silverrage

    This is a pretty nifty plugin.. I always end up having to have worldedit, despite only wanting it for the fix water aspect (running a pure survival server). I hate having plugin that i don't use or only use a portion so I'd like to do away with worldedit (its great for certain kinds of worlds, but not the ones I want).

    I have a question though, how does this plugin deal with water I've placed? Are there instances where it will allow water to stream? Or does it only affect "bodies" of water not flowing water?
     
  8. Offline

    Sayshal

    IDEA! Make that water lake its own plugin.. LOL I would use it as a troll methodXD (make a way to undo it?:p I think thats just hilarious.
     
  9. Offline

    bergerkiller

    @Sayshal lol a very bad idea. Desert + single source block = half of my world under water xd
    And it's impossible to undo it, so that's kind of a downside. (I had to perform a global water->air replacement...)

    @Nori_Silverrage It's a very simple system: once some sort of 'gap' is made, this triggers a block fromto event. Instead of firing the default water physics, it will insta-fill that hole with water if it is surrounded by 2 or more water source blocks. (the 4 directions are checked) It's very simple really, someone requested it once so I decided to just make it.
     
  10. Offline

    Nori_Silverrage

    Ahh, okay, that sounds pretty sweet then. Thanks for a making such a useful plugin. Hows it work for 1.0?
     
  11. Offline

    bergerkiller

    @Nori_Silverrage it solely relies on the Bukkit API, so it pretty much works for all builds.
     
  12. Offline

    douglas_srs

    It seems awesome, does it still works with 1.2.3?
     
  13. Offline

    bergerkiller

  14. Offline

    douglas_srs

    Thank you sir, I've already downloaded it and it's working :)
     
  15. Offline

    Isocadia

    Getting an error with 1.2.5R4:
    Anybody else having this, or should I start checking my plugins?
     
  16. Offline

    bergerkiller

    Isocadia add BKCommonLib in plugins as well, Stream Remover needs that to communicate with the world properly. (some helper utilities, and java plugin configuration and stuff)
     
  17. Offline

    Isocadia

    Where do I find it?
     
  18. Offline

    bergerkiller

  19. Offline

    Isocadia

    Thanks, it worked :D But it isn't included in the 1.3zip from your github :p Might want to add it ;)
     
  20. Offline

    bergerkiller

    Alright, I guess I will have to update that download then.
     
  21. Offline

    joehot2000

    first nolagg, and now this. i saw it earlier this year, but didnt see a need for it. now users are creativng streams a bit more, this is very useful :)
    i wonder what brilliant plugin you will come up with next?
     

Share This Page